
Apache Traffic Server 10.2.0 - عالية - عن بُعد - SSRF - إعادة توجيه 0.0.0.0/8
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · ats-redirect-zero-net
الفئة: SSRF الوصول: عن بُعد
Apache Traffic Server 10.2.0 (b1df7334) - Apache Software Foundation
القيمة الافتراضية لـ redirect.actions وهي routable:follow تصنّف 0.0.0.0/8 (باستثناء INADDR_ANY) على أنها FOLLOW. أما loopback فهي فقط 127.0.0.0/8 و ::1. إن منع وجهة CONNECT الافتراضي و IncludeUrlValidator الخاص بـ ESI يرفضان بالفعل 0.0.0.0/8. لكن اتباع إعادة التوجيه يعيد فتحه.
القيمة الافتراضية لـ number_of_redirections هي 0، لذا لا يتم تقييم الخريطة حتى يتم تفعيل follow. ومع ذلك، فإن أي إضافة (plugin) محمّلة تستدعي TSHttpTxnRedirectUrlSet تفرض قفزة واحدة حتى عندما يكون العدّاد 0 (إعادة تعيين العدّاد الخاصة بـ CVE-2026-58189 مغلقة).
| المعرّف | لا يوجد CVE بعد |
| الفئة | SSRF (اتباع إعادة التوجيه يفوّت 0.0.0.0/8) |
| الوصول | عن بُعد (ترويسة Location من الأصل بعد تفعيل follow) |
| CWE | CWE-918 |
| CVSS | عالٍ: 8.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N |
| المنتج | Apache Traffic Server |
| المتأثر | 10.2.0 (b1df7334b39a878971c376da849e8da4984918b6) تعبئة routable في redirect.actions |
| المصادقة | لا شيء. يجب تفعيل follow (number_of_redirections=1 في المختبر). |
| الترخيص | GNU Affero GPL v3.0 |
| المختبر | 127.0.0.1:18790 فقط |
ثبّتُّ الوسم العام 10.2.0 والالتزام b1df7334. المختبر عبارة عن وكيل عكسي ats-10.2.0-lab:local مبني من المصدر على loopback. loopback RETURN. 0.0.0.0 400. 0.0.0.1 FOLLOW. يتم تخطي إعادة التعيين (remap) في قفزة الاتباع.
جعْل ATS يتبع Location: http://0.0.0.1/ بعد number_of_redirections=1 (أو بعد استدعاء إضافة لـ TSHttpTxnRedirectUrlSet). على Linux، فإن 0.0.0.1 محلي.
| الطريقة | الهدف | الصلاحية |
|---|---|---|
GET بدون مصادقة؛ الأصل 302 Location: http://0.0.0.1:18080/w مع number_of_redirections=1 | تعبئة ROUTABLE في parse_redirect_actions (HttpConfig.cc:1782-1787)؛ خريطة إجراء OSDNSLookup | استطلاع / SSRF (مُثبت في المختبر): يتبع ATS بصفته ROUTABLE. جسم العميل ATS-REDIRECT-ZERO-NET-WITNESS. يتم تخطي إعادة التعيين في قفزة الاتباع. |
نفس القفزة؛ نسخ Authorization / Cookie | HttpSM::redirect_request | سلامة (مُستنتج): لا يتم تجريد هذه الترويسات في قفزة الاتباع. لم يتم اختبارها كعملية كتابة. |
::ffff:0:0/96 المعيّن من IPv4 | نفس تعبئة ::/0 | استطلاع (مُستنتج): نظير منع وجهة CONNECT. لم يتم اختباره. |
مُثبت في المختبر مقابل مُستنتج: اتباع 0.0.0.1، وloopback RETURN، وroutable FOLLOW، وINADDR_ANY 400 هي أمور مختبرية. أما المعيّن من IPv4 وتمرير بيانات الاعتماد فهي مُستنتجة.
يتطلب: redirect.actions بقيمة routable:follow (الافتراضي عند الترجمة) و number_of_redirections > 0، أو إضافة تحدد عنوان URL لإعادة التوجيه. العدّاد الافتراضي هو 0.
| السطح | المختبر |
|---|---|
Loopback 127.0.0.1 | RETURN. لم يرَ العميل LOOPBACK-ONLY-SECRET أبدًا. بقي 302. |
0.0.0.0 INADDR_ANY | 400 قبل خريطة الإجراء |
الافتراضي number_of_redirections=0 | routable:follow غير مُقيَّم |
RFC1918 / CGNAT / link-local / ::1 | RETURN عبر تعبئة DEFAULT |
منع وجهة CONNECT 0.0.0.0/8 | موجود بالفعل في ip_allow.yaml الافتراضي |
مدقّق تضمين ESI 0.0.0.0/8 | خاص بالفعل (CVE-2026-58178) |
| إعادة تعيين عدّاد إعادة توجيه الإضافة | مغلق (CVE-2026-58189) |
ليس CVE-2026-58189. وليس CVE-2026-58178. تلك النطاقات تم تسميتها على CONNECT وESI. لم يحصل عليها Follow-redirect.
python3 ats-redirect-zero-net-Abraxas-Labs.py
أو
cd lab
./run.sh
Loopback 127.0.0.1:18790. مشروع Compose ats-redirect-zero-net. الصورة ats-10.2.0-lab:local. الشاهد ATS-REDIRECT-ZERO-NET-WITNESS. السطر الأخير:
SUCCESS ats-redirect-zero-net follow-0.0.0.1=yes loopback-return=yes routable-follow=yes inaddr-any=400 remap_required=1 ATS-REDIRECT-ZERO-NET-WITNESS
ضع علامة على 0.0.0.0/8 و::ffff:0:0/96 المعيّن من IPv4 بالطريقة نفسها التي يفعلها كل من رفض وجهة CONNECT الافتراضي وIncludeUrlValidator في ESI بالفعل. فالعنوان loopback ليس 127/8 فقط. رفض ats_is_ip_any للعنوان 0.0.0.0 ليس كافيًا.
حتى ذلك الحين، اترك number_of_redirections عند 0، أو اضبط redirect.actions بحيث يكون routable هو RETURN. لا يزال TSHttpTxnRedirectUrlSet الخاص بالإضافة يفرض قفزة واحدة.
b1df7334b39a878971c376da849e8da4984918b6)src/proxy/http/HttpConfig.cc parse_redirect_actionssrc/records/RecordsConfig.cc number_of_redirections / redirect.actionssrc/api/InkAPI.cc زيادة القفزة الواحدة في TSHttpTxnRedirectUrlSetconfigs/ip_allow.yaml.defaultIncludeUrlValidator 0.0.0.0/8 خاص (CVE-2026-58178)