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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
gitea-CVE-2026-28699 — تمارين معملية + شرح لـ CVE-2026-28699: تجاوز تطبيق نطاقات OAuth2 في Gitea عبر المصادقة الأساسية HTTP | Kitploit
أدوات/GitHubGitHub/alardiians/gitea-cve-2026-28699
المصادقة والترخيصتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبCTFاختبار الاختراقالتعلم والتعليممختبرات وتدريب عملي
GitHubalardiians/gitea-cve-2026-28699

gitea-CVE-2026-28699

تمارين معملية + شرح لـ CVE-2026-28699: تجاوز تطبيق نطاقات OAuth2 في Gitea عبر المصادقة الأساسية HTTP

عرض المستودع
1منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-28699: تجاوز نطاق OAuth2 في Gitea عبر المصادقة الأساسية HTTP

يمكن لرمز وصول OAuth2 في Gitea مقتصر على read:user فقط تنفيذ إجراءات كتابة كاملة عند إرساله كـ Authorization: Basic base64(<token>:x-oauth-basic) بدلاً من كرمز Bearer. يتم تخطي فحص النطاق لأي رمز يتم تقديمه عبر المصادقة الأساسية.

المتأثر: <= 1.26.1. تم الإصلاح في 1.26.2. التنبيه: GHSA-9r5x-wg6m-x2rc. CWE-863. الخطورة عالية.

التقرير الكامل: WRITEUP.md

بداية سريعة

root@kitploit:~
pip install -r requirements.txt   # requests
python fetch_binaries.py          # pulls vulnerable 1.26.1 + patched 1.26.2 for your OS
python poc.py 1.26.1              # vulnerable: Basic-auth write succeeds (scope bypassed)
python poc.py 1.26.2              # patched: Basic-auth write blocked (403)

يقوم poc.py بإعداد Gitea مؤقتة على SQLite في دليل temp للنظام، ويقوم بتشغيل تدفق رمز التفويض OAuth2 لإنشاء رمز مقتصر على read:user فقط، ثم يستدعي نقطة نهاية كتابة عبر كل من Bearer و Basic ويطبع النتيجة. قم بتعيين POC_DEBUG=1 لرؤية خطوات تدفق المصادقة.

المخرجات المتوقعة

الإصدار الضعيف 1.26.1:

root@kitploit:~
[Bearer] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
[Basic ] PATCH /api/v1/user/settings -> HTTP 200   (ALLOWED -- scope BYPASSED)
>>> VULNERABLE: read:user token performed a write via Basic auth.

الإصدار المُصحَّح 1.26.2:

root@kitploit:~
[Bearer] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
[Basic ] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
>>> PATCHED: scope enforced on both Bearer and Basic.

السبب الجذري في جدول واحد

يقوم services/auth/basic.go بتعيين IsApiToken ولكن ليس ApiTokenScope لرموز OAuth2. يعود middleware tokenRequiresScopes مبكرًا عندما يكون النطاق غائبًا، لذا لا يتم فحص أي شيء. يضيف إصلاح 1.26.2 الإعداد المفقود store.GetData()["ApiTokenScope"] = accessTokenScope.

الملفات

للاستخدام المصرح به فقط

لأغراض التعليم والاختبار الأمني المصرح به: مختبرك الخاص، صناديق CTF و HTB، أهداف مكافآت الأخطاء داخل النطاق. يقوم PoC بتشغيل Gitea الخاصة به القابلة للتخلص، لذا لا توجهه إلى أي شيء لا تملكه.

تنزيل الأداة
عرض المصادقةIsApiTokenApiTokenScopeفرض النطاق؟
رمز OAuth2 عبر Bearertrueمحددنعم
رمز OAuth2 عبر Basictrueمفقودلا (يفتح عند الفشل)
رمز الوصول الشخصيtrueمحددنعم
الملفالغرض
WRITEUP.mdتحليل السبب الجذري، التأثير، المعالجة، الكشف
fetch_binaries.pyيقوم بتنزيل ثنائيات 1.26.1 / 1.26.2 لنظام التشغيل والبنية الخاصة بك
poc.pyيجهز Gitea، ينشئ رمز read:user، يختبر Bearer مقابل Basic
requirements.txtrequests