CVE-2026-48743
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 22 - wyżej niż 22% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
Atakujący może ominąć reguły bezpieczeństwa Envoy (np. blokowanie ścieżek) i wysłać złośliwe żądanie HTTP/1 bezpośrednio do backendu, co prowadzi do naruszenia integralności i poufności danych.
Rekomendacja
Niezwłocznie zaktualizuj Envoy do wersji 1.35.11, 1.36.7, 1.37.3 lub 1.38.1 w zależności od używanej gałęzi. Jeśli aktualizacja nie jest możliwa, rozważ tymczasowe wyłączenie obsługi HTTP/3.
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-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.
- CVE-2026-47204Średnie
Podatność w filtrze envoy.filters.http.grpc_stats powoduje crash procesu Envoy przez dereferencję pustego wskaźnika, gdy żądanie protokołu Connect (Content-Type: application/connect+proto lub application/connect+json) trafia na trasę direct_response. Problem dotyczy wersji od 1.26.0 do 1.35.13, 1.36.9, 1.37.5 i 1.38.3.
Oryginalny opis (angielski, źródło NVD)
Envoy is an open source edge and service proxy designed for cloud-native applications. Prior to 1.35.11, 1.36.7, 1.37.3, and 1.38.1, Envoy can translate a downstream HTTP/3 request that is complete at the transport layer (HEADERS with FIN / headers-only close) but still carries a nonzero Content-Length into a complete upstream HTTP/1 request with unresolved body debt. In an HTTP/1 upstream deployment where the origin replies before reading the declared body and keeps the connection reusable, the beginning of the next Envoy-generated upstream request can be consumed as the first request's body. The remaining bytes are then parsed by the origin as a new HTTP/1 request. This was reproduced as a route-bypass/desync: direct /pwn was denied by Envoy, but the second downstream H3 stream received the response for backend-parsed GET /pwn HTTP/1.1. This vulnerability is fixed in 1.35.11, 1.36.7, 1.37.3, and 1.38.1.

