Odebrany

CVE-2026-86147

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

Zewnętrzna kontrola nazwy lub ścieżki pliku oraz niekontrolowane zużycie zasobów w Apache bRPC (wersja < 1.18.0) na wszystkich platformach umożliwia zdalnym atakującym, którzy mogą uzyskać dostęp do wbudowanego portu usługi, tworzenie katalogów i obcinanie/nadpisywanie plików z uprawnieniami procesu serwera lub wstrzymywanie ogólnoprocesowego profilera procesora/kontenencji przez dowolnie długi czas.

Główna przyczyna:
1. Wbudowana usługa /flags umożliwia modyfikację gflag zawierających walidator w czasie wykonywania za pomocą ?setvalue=. Flagi gflagi ścieżki zrzutu bvar/mbvar (plik_bvar_dump_tabs, plik_zrzutu_bvar, plik_zrzutu) zostały zarejestrowane w walidatorze akceptowania wszystkiego, którego jedynym celem było wybudzenie wątku zrzutu. Zdalny atakujący może zatem ponownie wskazać ścieżkę zrzutu (np. GET /flags/bvar_dump_file?setvalue=/victim/dir/target, po którym następuje GET /flags/bvar_dump?setvalue=true lub odpowiednik mbvar_dump_file, który jest używany dosłownie bez wymuszonego sufiksu), powodując, że wątek zrzutu rekurencyjnie tworzy katalogi i otwiera/obcina pliki w lokalizacjach wybranych przez atakującego. Nazwy zakładek w bvar_dump_tabs zostały dodane do ścieżki bez oczyszczania, umożliwiając „..” ucieczkę ze skonfigurowanego katalogu.
2. Wbudowana usługa /pprof nie ograniczyła parametru ?sekundy= do FLAGS_max_profiling_sekundy (limit wymuszany przez /hotspots). Pojedyncze żądanie, takie jak ?sekundy=2147483647, powodowało, że moduł obsługi uśpił się na dziesięciolecia, trzymając ogólnoprocesowy profiler procesora gperftools lub profiler rywalizacji bthread, więc /hotspots/cpu i /hotspots/contention zwróciły w tym czasie 503 dla wszystkich pozostałych.

Dotknięte scenariusze:
Dowolny serwer Apache bRPC udostępniający wbudowane usługi (domyślnie włączone na tym samym porcie, co normalny ruch RPC) niezaufanym sieciom.

Jak naprawić:
(Wybierz jedną z poniższych opcji)
1. Zaktualizuj bRPC do wersji 1.18.0, która rozwiązuje ten problem.
2. Zastosuj tę poprawkę: https://github.com/apache/brpc/pull/3523

Uwaga:
Po naprawieniu plików bvar_dump_file, bvar_dump_tabs i mbvar_dump_file nie można już modyfikować w czasie wykonywania za pośrednictwem wbudowanej usługi /flags. Nadal można je zmieniać programowo za pomocą google::SetCommandLineOption(), ze skutkiem od następnego cyklu zrzutu. Czas trwania profilowania /pprof jest teraz ograniczony przez flagę gflag -max_profiling_sekundy (domyślnie 300 sekund), którą może dostosować właściciel serwera.

>_ Słabości (CWE)

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org