CVE-2026-84747
Təsvir
Bütün platformalarda Apache bRPC-nin (versiya < 1.18.0) HTTP protokolu tətbiqindəki interpretasiya ziddiyyəti uzaqdakı hücumçulara ön proksi tərəfindən tətbiq edilən girişə nəzarət qaydalarından yan keçməyə imkan verir. Kök Səbəb: bRPC-nin HTTP protokolundakı metod göndərmə funksiyası olan FindMethodPropertyByURI(), sorğu yolunu boş sahələri ötürən sətir bölücü ilə ayırır, buna görə də boş yol seqmentləri (ardıcıl slash-lər) olan yollar, məsələn //flags, /flags// və /flags//port, onların sıxılmış forması olan /flags ilə eyni metoda yönləndirilir. RFC 3986-ya əsasən bunlar fərqli yollardır. ACL (məsələn, /flags kimi daxili xidmətlərə girişi bloklayan) tətbiq edən ön proksi yalnız sıxılmış formanı uyğunlaşdırır və buna görə də doldurulmuş hərfi ifadəni bRPC serverinə yönləndirir, burada isə o, sanki sıxılmış forma imiş kimi emal edilir. Bu fərqlilik //flags?setvalue= sorğusunun, /flags-ın çatmasının qadağan olduğu daxili xidmətə çatmasına şərait yaradır. Əlavə olaraq, HTTP/2 tətbiqi :path psevdo-başlığını heç vaxt yoxlamırdı, beləliklə, RFC 9113-ün 8.3.1 bölməsinə zidd olaraq, :path olmadan və ya :path-ı '/' ilə başlamayan və ya ulduz formasında ('*') olmayan sorğular rədd edilmirdi. Təsir Edən Ssenarilər: Hərfi sorğu yolu üzərində girişə nəzarət (ACL) qərarları verən ön proksi və ya şlüz arxasında yerləşdirilmiş Apache bRPC qurulmaları, burada bRPC serveri həmin proksidən HTTP və ya HTTP/2 trafikini qəbul edirsə. Belə qurulmalarda hücumçu, ön proksinin bloklamaq istədiyi resursa çatmaq üçün boş yol seqmentləri olan bir yol göndərə bilər. Həll Yolu: (Aşağıdakı seçimlərdən birini seçin) 1. bRPC-ni bu problemi aradan qaldıran 1.18.0 versiyasına yüksəldin. 2. Bu yamanı tətbiq edin: https://github.com/apache/brpc/pull/3512 Qeyd: Düzəliş tətbiq edildikdən sonra, boş yol seqmentləri (ardıcıl slash-lər) olan HTTP və HTTP/2 sorğu yolları standart olaraq rədd edilir, həmçinin boş olan və ya '/' ilə başlamayan və ya '*' ilə bərabər olmayan HTTP/2 :path dəyərləri rədd edilir. Əvvəlki yumşaq davranışdan asılı olan qurulmalar bunu -http_allow_empty_path_segments gflag-ını aktivləşdirməklə bərpa edə bilərlər, lakin etibarsız trafiklərə açıq olan serverlər üçün bu tövsiyə edilmir.
Necə düzəltmək olar
- Apache Software Foundation Apache bRPC1.18.0 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| Apache Software Foundation Apache bRPC | v < 1.18.0 | 1.18.0 |
Versiyanızı yoxlayın
Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.
Attack Surface Management
Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.