CVE-2023-35945
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 62 - wyżej niż 62% wszystkich znanych CVE
Streszczenie
Podatność w Envoy związana z kodowaniem HTTP/2 może prowadzić do wycieku struktur pamięci po otrzymaniu ramek `RST_STREAM` i `GOAWAY` z serwera upstream. Błąd w kodzie czyszczenia powoduje wyciek pamięci, co może prowadzić do odmowy usługi.
Ocena ryzyka
Organizacja może doświadczyć odmowy usługi z powodu wyczerpania pamięci, co może wpłynąć na dostępność usług opartych na Envoy.
Rekomendacja
Zaleca się aktualizację do wersji 1.26.3, 1.25.8, 1.24.9 lub 1.23.11, aby usunąć tę podatność.
Inne podatności w Envoy
Zobacz wszystkie- CVE-2026-48090Średnie
W Envoy od wersji 1.37.0 do 1.37.5 oraz 1.38.3 filtr HTTP OAuth2 może pozostawić oczekujące żądanie wymiany tokena po zamknięciu strumienia downstream. Opóźniona odpowiedź AsyncClient może wywołać metody OAuth2Filter na już zwolnionym obiekcie, prowadząc do niezdefiniowanego zachowania, awarii procesu roboczego (utrata dostępności) oraz błędów use-after-free/invalid-vptr. Podatność została naprawiona w wersjach 1.37.5 i 1.38.3.
- CVE-2026-47220Wysokie
Podatność w Envoy umożliwia awarię procesu podczas logowania przy użyciu formatu %REQUESTED_SERVER_NAME(X:Y)% z opcjami HOST_FIRST lub SNI_FIRST, gdy nagłówek hosta jest nieobecny w żądaniu. Problem występuje w wersjach od 1.37.0 do 1.37.4 oraz 1.38.0 do 1.38.2.
- CVE-2026-47205Średnie
W Envoy od wersji 1.36.0 do 1.36.9, 1.37.5 i 1.38.3 występuje podatność Use-After-Free (UAF) w filtrze HTTP ext_authz. Problem pojawia się przy równoczesnym przetwarzaniu nadpisań autoryzacji na trasie i szybkim rozłączaniu klientów, co prowadzi do błędu segmentacji i awarii procesu.
- CVE-2026-48743Wysokie
Envoy przed wersjami 1.35.11, 1.36.7, 1.37.3 i 1.38.1 nieprawidłowo przetwarza żądania HTTP/3 z nagłówkiem Content-Length o wartości niezerowej, które są zakończone na poziomie transportu (HEADERS z FIN). Powoduje to wysłanie do backendu HTTP/1 żądania z niezapłaconym długiem ciała, co umożliwia desynchronizację i ominięcie reguł routingu.
- CVE-2026-48706Średnie
W Envoy od wersji 1.34.0 do 1.35.13, 1.36.9, 1.37.5 i 1.38.3 występuje podatność w komponencie TcpStatsdSink, gdzie przepełnienie bufora wątkowo-lokalnego może być wywołane przez bardzo długie nazwy statystyk (np. >16 KiB). Atakujący może wysłać żądanie HTTP lub gRPC z ekstremalnie długą ścieżką (:path), która jest rejestrowana przez filtr grpc_stats z opcją stats_for_all_methods: true, co prowadzi do zapisu poza przydzieloną pamięcią sterty.
- CVE-2026-48497Średnie
W Envoy, w przypadku skonfigurowania filtru DNS UDP z lokalnym lub zdalnym rozwiązywaniem nazw o długości 255 oktetów, zapytanie z taką nazwą powoduje nieprawidłowe zakończenie procesu. Problem wynika z błędnego założenia w czasie wykonania, że nazwa musi być krótsza niż 255 oktetów, co jest sprzeczne ze specyfikacją DNS RFC 1035.
- CVE-2026-48044Wysokie
W Envoy od wersji 1.23.0 do 1.35.11, 1.36.7, 1.37.3 i 1.38.1 wykryto podatność w implementacji dekompresora zstd (ZstdDecompressorImpl). Przetwarzanie specjalnie spreparowanego, silnie skompresowanego ładunku zstd może prowadzić do ogromnej alokacji pamięci. Atakujący może wykorzystać tę podatność do wyczerpania pamięci, co skutkuje zabiciem procesu przez OOM i odmową usługi (DoS) dla proxy Envoy.
- CVE-2026-48042Wysokie
W Envoy, otwartoźródłowym proxy brzegowym i usługowym dla aplikacji chmurowych, destruktor obiektu JSON powoduje przepełnienie stosu przy głęboko zagnieżdżonych obiektach (rzędu 100 tys. poziomów). Podatność występuje przed wersjami 1.35.11, 1.36.7, 1.37.3 i 1.38.1.
- CVE-2026-47778Średnie
W Envoy odkryto lukę w walidacji certyfikatów TLS, gdzie atakujący może dostarczyć certyfikat z dNSName SAN zawierającym wbudowany bajt NUL. Z powodu nieprawidłowego rzutowania na C-string, walidacja obcina nazwę domeny w miejscu NUL, co pozwala na pominięcie kontroli i autoryzację nieprawidłowego połączenia.
- CVE-2026-47775Średnie
Envoy przed wersjami 1.35.11, 1.36.7, 1.37.3 i 1.38.1 zawiera podatność w filtrze OAuth2, gdzie funkcje encrypt()/decrypt() używają AES-256-CBC bez znacznika uwierzytelniającego. Atakujący może wykorzystać padding oracle na endpointcie /callback, aby odzyskać plaintext PKCE code_verifier z zaszyfrowanego ciasteczka CodeVerifier.
Oryginalny opis (angielski, źródło NVD)
Envoy is a cloud-native high-performance edge/middle/service proxy. Envoy’s HTTP/2 codec may leak a header map and bookkeeping structures upon receiving `RST_STREAM` immediately followed by the `GOAWAY` frames from an upstream server. In nghttp2, cleanup of pending requests due to receipt of the `GOAWAY` frame skips de-allocation of the bookkeeping structure and pending compressed header. The error return [code path] is taken if connection is already marked for not sending more requests due to `GOAWAY` frame. The clean-up code is right after the return statement, causing memory leak. Denial of service through memory exhaustion. This vulnerability was patched in versions(s) 1.26.3, 1.25.8, 1.24.9, 1.23.11.

