CVE-2026-54425
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 17 - wyżej niż 17% wszystkich znanych CVE
Streszczenie
Nieograniczona rekurencja w dekoderze HTTP/2 HPACK Apache bRPC przed 1.18.0 pozwala zdalnym atakującym wywołać odmowę usługi przez wysłanie spreparowanego bloku nagłówków HTTP/2 z wieloma kolejnymi wpisami Dynamic Table Size Update. Każda aktualizacja była dekodowana rekurencyjnie, co mogło wyczerpać stos wątku.
Ocena ryzyka
Może to spowodować awarię serwera bRPC obsługującego HTTP/2 z niezaufanej sieci, prowadząc do odmowy usługi.
Rekomendacja
Zaktualizuj bRPC do wersji 1.18.0 lub zastosuj poprawkę z PR #3343, która zmienia dekodowanie na iteracyjne.
Inne podatności w Apache bRPC
Zobacz wszystkie- CVE-2026-86249Krytyczne
W brpc::Server skonfigurowanym z ServerOptions.auth oraz ServerOptions.internal_port można obejść uwierzytelnianie, wysyłając najpierw żądanie do wbudowanej usługi na internal_port. Weryfikacja wykonywana jest tylko dla pierwszej wiadomości połączenia, a jej wynik jest przypisywany do całego połączenia.
- CVE-2026-78334Krytyczne
Brak uwierzytelniania w ścieżce strumieniowego RPC Apache bRPC (wersja < 1.18.0) pozwala zdalnemu atakującemu ominąć uwierzytelnianie serwera i wstrzykiwać lub dostarczać ramki strumieniowe, gdy serwer ma skonfigurowany Authenticator. Ramki strumieniowe nie przechodzą przez hak uwierzytelniania, a strumienie mogą być przechwycone przez inne gniazdo o tym samym identyfikatorze.
- CVE-2026-56388Krytyczne
Parser poleceń Redis w Apache bRPC akceptuje pustą tablicę RESP jako nagłówek polecenia. Zdalny nieuwierzytelniony atakujący może wysłać pustą tablicę, a następnie ciąg bulk, powodując zapis poza granicami bufora i awarię procesu.
- CVE-2026-48830Krytyczne
Nieprawidłowe uwierzytelnianie w Apache bRPC do 1.17.0 pozwala zdalnemu nieuwierzytelnionemu atakującemu ominąć uwierzytelnianie chronionych wbudowanych punktów końcowych HTTP poprzez wysłanie najpierw wbudowanego żądania HTTP na tym samym połączeniu keep-alive HTTP/1.1. Gdy włączone jest ServerOptions.auth i wbudowane usługi HTTP są publicznie wystawione, pierwsze wbudowane żądanie może oznaczyć połączenie jako uwierzytelnione dla kolejnych żądań.
- CVE-2025-60021Krytyczne
Podatność na zdalne wstrzyknięcie poleceń w wbudowanej usłudze profilera sterty w Apache bRPC (wszystkie wersje < 1.15.0) na wszystkich platformach umożliwia atakującemu wstrzyknięcie zdalnego polecenia. Przyczyną jest to, że wbudowana usługa profilera sterty bRPC (/pprof/heap) nie waliduje parametru extra_options dostarczonego przez użytkownika i wykonuje go jako argument wiersza poleceń. Atakujący mogą wykonywać zdalne polecenia za pomocą parametru extra_options. Dotyczy to scenariuszy użycia wbudowanej usługi profilera sterty bRPC do profilowania pamięci jemalloc. Naprawa: 1. Zaktualizuj bRPC do wersji 1.15.0. 2. Zastosuj poprawkę ręcznie (https://github.com/apache/brpc/pull/3101).
- CVE-2023-31039Krytyczne
Apache bRPC w wersji poniżej 1.5.0 zawiera podatność, która pozwala atakującemu na wykonanie dowolnego kodu poprzez parametr `ServerOptions::pid_file`. Atakujący, który może wpłynąć na ten parametr podczas uruchamiania serwera bRPC, może wykonać dowolny kod z uprawnieniami procesu bRPC.
- CVE-2026-90484Średnie
W kliencie MySQL biblioteki Apache bRPC występuje dereferencja wskaźnika null podczas przetwarzania odpowiedzi serwera o zerowej długości ładunku. Pakiet o zadeklarowanej długości zero przechodzi kontrolę ramki, a następnie parser odczytuje bajt typu odpowiedzi przez nieograniczone pobranie 5 bajtów, które zwraca nullptr, co powoduje odczyt p[4] i awarię procesu klienta.
- CVE-2026-87849Średnie
Podatność w parserze odpowiedzi usługi nazewniczej Discovery w Apache bRPC (wersje < 1.18.0) polega na wywoływaniu akcesorów RapidJSON przeznaczonych wyłącznie dla obiektów (FindMember) na wartościach JSON bez uprzedniego sprawdzenia ich typu. Zniekształcona odpowiedź Discovery, zawierająca nie-obiektowe wpisy w polach data/service lub na liście instancji, powoduje odczyt pamięci poza granicami i potencjalną awarię klienta bRPC.
- CVE-2026-86147Wysokie
Apache bRPC w wersji < 1.18.0 udostępnia wbudowane usługi /flags i /pprof, które pozwalają zdalnemu atakującemu na zmianę ścieżek zrzutu (bvar_dump_file, bvar_dump_tabs, mbvar_dump_file) i tworzenie katalogów lub nadpisywanie plików z uprawnieniami procesu serwera. Dodatkowo parametr ?seconds= w /pprof nie jest ograniczany, co umożliwia blokowanie procesowego profilera CPU na dowolnie długi czas.
- CVE-2026-86146Wysokie
Podatność typu HTTP request/response smuggling w bibliotece Apache bRPC w wersji < 1.18.0 wynika z niespójnej interpretacji nagłówków HTTP/1.1 przez wbudowany parser. bRPC akceptuje nieprawidłowe formy nagłówków (spacje przed dwukropkiem, spacje w wartościach Content-Length, obs-fold, traktowanie trailerów chunked jako nagłówków, listy Transfer-Encoding z odstępami), co pozwala atakującemu na przemycenie żądań lub nagłówków, gdy bRPC działa za proxy lub load balancerem.
Oryginalny opis (angielski, źródło NVD)
Uncontrolled recursion in the HTTP/2 HPACK decoder in Apache bRPC before 1.18.0 allows remote attackers to cause denial of service by sending a crafted HTTP/2 header block containing many consecutive Dynamic Table Size Update entries. Each update was decoded by recursively invoking the HPACK decoder, which could exhaust the thread stack before a header field or end of input was reached. Root Cause: The bRPC HPACK decoder recursively decoded the next entry after processing a Dynamic Table Size Update. The decoder did not bound the recursion depth, so a long sequence of update entries could consume excessive stack space. Affected Scenarios: Use bRPC with the built-in HTTP/2 implementation to accept HTTP/2 traffic from an untrusted network. How to Fix: 1. Upgrade bRPC to version 1.18.0, which fixes this issue. 2. Apply this patch: https://github.com/apache/brpc/pull/3343 Note: The fix changes HPACK Dynamic Table Size Update decoding to use iterative parsing instead of recursive parsing.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

