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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-54761-poc — إثبات المفهوم الذي يوضح تجاوزًا للترخيص في مزود بوابة Kubernetes الخاص بـ Traefik (CVE-2026-54761) عبر ثغرة crossProviderNamespaces، مما يؤدي إلى كشف الخدمات الداخلية مثل api@internal. | Kitploit
أدوات/GitHubGitHub/saku0512/cve-2026-54761-poc
أمن الحاوياتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن السحابةالتعلم والتعليم
GitHubsaku0512/cve-2026-54761-poc

CVE-2026-54761-poc

إثبات المفهوم الذي يوضح تجاوزًا للترخيص في مزود بوابة Kubernetes الخاص بـ Traefik (CVE-2026-54761) عبر ثغرة crossProviderNamespaces، مما يؤدي إلى كشف الخدمات الداخلية مثل api@internal.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-54761: إثبات المفهوم لتجاوز قيود crossProviderNamespaces في Traefik Kubernetes Gateway

English version

ملخص

هذا المستودع هو إثبات المفهوم (PoC) لإعادة إنتاج الثغرة الأمنية عالية الخطورة CVE-2026-54761 الموجودة في مزود Kubernetes Gateway الخاص بـ Traefik في بيئة محلية.

تؤثر هذه الثغرة على قائمة السماح crossProviderNamespaces. في قواعد HTTPRoute التي تعلن عن مراجع خلفية متعددة ذات أوزان، يتحقق Traefik من قائمة السماح مقابل backendRef.namespace للمرجع المستهدف، وليس مقابل مساحة الاسم الخاصة بالتوجيه نفسه. نتيجة لذلك، حتى إذا كان HTTPRoute موجودًا في مساحة اسم غير مسموح بها، يمكن كشف خدمات Traefik الداخلية مثل api@internal إذا كان المرجع الخلفي يشير إلى مساحة اسم مسموح بها ويوجد ReferenceGrant مناسب من Gateway API.

المبلغون: saku0512 (https://github.com/Saku0512), vvvvvvvvvvel (https://github.com/vvvvvvvvvvel)


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

هذا المشروع مخصص للأغراض التعليمية واختبارات الأمان المصرح بها فقط.

لا تقم بتشغيل هذا الإثبات على أنظمة لا تملكها أو لا تديرها. تم تصميم هذا الإثبات لإنشاء كتلة kind محلية قابلة للتجاهل وإظهار المشكلة في بيئة معزولة.


تفاصيل الثغرة

  • معرف CVE: CVE-2026-54761
  • المنتج: Traefik
  • المكون: مزود Kubernetes Gateway
  • النوع: تجاوز التفويض / كشف الخدمات الداخلية
  • التأثير: يمكن كشف خدمات Traefik الداخلية مثل api@internal عبر مستوى البيانات العادي
  • الإصدارات المتأثرة: إصدارات Traefik قبل الإصدارات المصححة أدناه
  • الإصدارات المصححة: v3.6.21 و v3.7.5

السبب الجذري

خيار crossProviderNamespaces مصمم لتقييد مساحات أسماء توجيهات Gateway API التي يمكنها إعلان مراجع خلفية TraefikService تحتوي على مراجع لخدمة @internal.

في مسار معالجة الخلفية الموزونة الضعيفة، يتحقق Traefik من قائمة السماح مقابل backendRef.namespace. ولكن، الحدود الأمنية هي مساحة اسم HTTPRoute الذي يعلن المرجع، لذا فإن هذا التحقق خاطئ.

السلوك المتوقع:

root@kitploit:~
providers:
  kubernetesGateway:
    crossProviderNamespaces:
      - trusted

يجب فقط للتوجيهات التي تكون مساحة اسمها trusted أن تعلن مراجع خلفية TraefikService عبر المزود.

السلوك الضعيف:

root@kitploit:~
backendRefs:
  - group: traefik.io
    kind: TraefikService
    name: api@internal
    namespace: trusted

إذا كان التوجيه يحتوي على مراجع خلفية متعددة وتم تعيين backendRef.namespace إلى مساحة اسم trusted المسموح بها، فقد يتم قبول HTTPRoute في مساحة اسم attacker.


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

يقوم هذا الإثبات بإنشاء كتلة kind محلية قابلة للتجاهل بالتكوين التالي:

  • Traefik v3.7.1
  • موارد Gateway API المخصصة (CRDs)
  • providers.kubernetesGateway.crossProviderNamespaces=trusted
  • ReferenceGrant عادي من Gateway API من trusted
  • توجيه تحكم إيجابي يجب رفضه
  • توجيه خلفي موزون مختلط يوضح التجاوز

المتطلبات

  • Docker
  • kind
  • kubectl
  • curl

طريقة التشغيل

root@kitploit:~
cd external-repro-kind
./run-kind-repro.sh

يقوم البرنامج النصي تلقائيًا بحذف الكتلة عند الانتهاء.

للحفاظ على الكتلة للفحص اليدوي:

root@kitploit:~
KEEP_CLUSTER=1 ./run-kind-repro.sh

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

يستخدم توجيه التحكم مرجعًا خلفيًا واحدًا محظورًا api@internal من مساحة اسم attacker. في هذه الحالة، لا ينبغي كشف API.

root@kitploit:~
control status: 404

يستخدم توجيه الاستغلال مرجعين خلفيين، مما يجعل Traefik يقوم ببناء خدمة موزونة. في الإصدار الضعيف، يؤدي طلب /api/http/services إلى إرجاع JSON من Traefik API.

root@kitploit:~
exploit returned Traefik API JSON
api@internal status: enabled
weighted members:
api@internal              1000000
attacker-whoami-http-80  1

النقطة المهمة هي أن كلا التوجيهين تم إنشاؤهما من نفس مساحة اسم `attacker` غير الموثوقة. يتم رفض توجيه التحكم ذو الخلفية الواحدة، بينما يتم حل توجيه الخلفية الموزونة المختلطة بنجاح وكشف `api@internal`.

---

## الملفات
- `external-repro-kind/kind-config.yaml` - تكوين كتلة kind محلية تكشف Traefik على `127.0.0.1:18080`
- `external-repro-kind/traefik-v371.yaml` - نشر Traefik الضعيف و GatewayClass
- `external-repro-kind/gateway-exploit.yaml` - مساحة الاسم و Gateway و ReferenceGrant وتوجيه التحكم وتوجيه التجاوز
- `external-repro-kind/run-kind-repro.sh` - نص إعادة الإنتاج الشامل محليًا

---

## الإجراءات التصحيحية
قم بترقية Traefik إلى الإصدار المصحح.

- في السلسلة v3.6: v3.6.21 أو ما بعده
- في السلسلة v3.7: v3.7.5 أو ما بعده

يجب على المشغلين أيضًا مراجعة موارد `ReferenceGrant` الحالية من Gateway API. لا تمنح مساحات أسماء غير موثوقة إمكانية الوصول إلى مراجع `TraefikService` عبر المزود إلا إذا كان التفويض مقصودًا صراحةً.

---

## معلومات مرجعية
- [استشارة أمان Traefik GHSA-3g6v-2r68-prfc](https://github.com/traefik/traefik/security/advisories/GHSA-3g6v-2r68-prfc)
- [إصدار Traefik v3.6.21](https://github.com/traefik/traefik/releases/tag/v3.6.21)
- [إصدار Traefik v3.7.5](https://github.com/traefik/traefik/releases/tag/v3.7.5)
تنزيل الأداة