Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
gitlab-cve-2020-10977 — استغلال قراءة الملفات التعسفية في GitLab | Kitploit
أدوات/GitHubGitHub/vandycknick/gitlab-cve-2020-10977
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالفريق الأحمرتطوير الحمولات
GitHubvandycknick/gitlab-cve-2020-10977

gitlab-cve-2020-10977

استغلال قراءة الملفات التعسفية في GitLab

عرض المستودع
22منذ 5 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

GitLab CVE2020-10977

مقدمة

يوفر هذا السكربت تنفيذًا عن بُعد للأوامر (RCE) ضد GitLab Community Edition (CE) وEnterprise Edition (EE). الثغرة هي قراءة ملفات اعتباطية تسمح لك باستخراج secret_key_base الخاص بـ Rails عن طريق تنزيل ملف secrets.yaml الخاص بـ GitLab. وهذا بدوره يتيح لك الحصول على تنفيذ الأوامر عن طريق توقيع ملف تعريف الارتباط experimentation_subject_id الخاص بك الذي يستخدمه GitLab داخليًا لاختبارات A/B. يحتوي الحمولة المضمنة في ملف تعريف الارتباط على ثغرة إلغاء تسلسل تسمح بتشغيل الأكواد على مثيل GitLab.

ثغرة قراءة الملفات الاعتباطية موجودة في GitLab EE/CE 8.5 والإصدارات الأحدث. تم إصلاحها في 12.9.1 و12.8.8 و12.7.8. ومع ذلك، فإن RCE يؤثر فقط على الإصدار 12.4.0 وما فوق عندما تم تقديم ملف تعريف الارتباط الضعيف experimentation_subject_id.

تم الاختبار على 12.8.1

الاستخدام

تم اختبار الوحدة باستخدام python 3.9 وتتطلب التبعيات التالية:

  • requests
  • beautifulsoup4

إذا كان لديك pipenv مثبتًا، يمكنك البدء بسرعة عن طريق تشغيل pipenv install ثم pipenv shell للحصول على شل داخل البيئة الافتراضية pipenv.

root@kitploit:~
 $ ./cve_2020_10977.py --help

usage: cve_2020_10977.py [-h] --url URL -u USERNAME -p PASSWORD [--cmd CMD]

optional arguments:
  -h, --help            show this help message and exit
  --url URL             Target URL
  -u USERNAME, --username USERNAME
                        Gitlab username
  -p PASSWORD, --password PASSWORD
                        Gitlab password
  --cmd CMD             Command to execute

التطوير

تم تضمين Makefile لتسهيل التطوير المحلي أو اختبار الأداة. يعتمد على docker و docker-compose لتشغيل نسخة محلية سريعة من GitLab المعرضة لهذه الثغرة.

root@kitploit:~
make up

سيؤدي هذا إلى تشغيل مثيل محلي من GitLab ومثيل debian لتسهيل اختبار شل عكسي. سيكون مثيل GitLab متاحًا من localhost الخاص بك على المنفذ 5580. وجود هذه الصورة الإضافية يمنحك عنوان IP يمكن الوصول إليه من داخل شبكة docker. من الممكن جعل localhost الخاص بك قابلاً للوصول من حاوية docker، لكنه لا يستحق الجهد برأيي، وبالتأكيد لا أريد الترويج لاستخدام --privileged.

يمكن الاتصال بمثيل RHOST debian بسهولة عن طريق:

root@kitploit:~
make shell

هذا يسمح لك بتحضير الشل العكسي باستخدام nc -lnvp 9000.

عند الانتهاء من ذلك، تكون جاهزًا لاختبار الأداة. يمكنك تشغيل:

root@kitploit:~
make exploit

لتشغيل الأداة، لن يقوم هذا بتنفيذ RCE، بل سيطبع سر Rails الخاص بـ GitLab.

root@kitploit:~
make exploit-rce

سيقوم بربط هذه الثغرة بحمولة RCE المذكورة أعلاه للحصول على شل عكسي.

استمتع بالاختراق!

المراجع

  • https://hackerone.com/reports/827052
  • https://nvd.nist.gov/vuln/detail/CVE-2020-10977
  • https://www.exploit-db.com/exploits/48431
تنزيل الأداة