Podatności Envoy
30 znanych podatności CVE w Envoy, przetłumaczonych i ocenionych.
- CVE-2026-73553Wysokie
Envoy, otwartoźródłowy proxy brzegowe i usługowe, przed wersjami 1.36.10, 1.37.6, 1.38.4 i 1.39.1, ma podatność polegającą na niespójnej kanonizacji ścieżek. Gdy włączona jest opcja ignore_path_parameters_in_path_matching, router usuwa przyrostek średnika przed dopasowaniem, ale matcher RBAC url_path ocenia surową ścieżkę. Żądanie takie jak /admin;x może ominąć regułę DENY dla /admin, podczas gdy router nadal wybiera chronione backendy /admin.
- CVE-2026-73551Średnie
W Envoy przed wersjami 1.36.10, 1.37.6, 1.38.4 i 1.39.1 normalizacja URL nie rozpoznaje segmentów ścieżki kropki i podwójnej kropki, gdy niosą parametry średnika. Żądanie takie jak /user/..;foo=bar/admin nie jest kanonizowane do /admin nawet przy włączonej normalizacji ścieżki. Jeśli upstream interpretuje segment zgodnie z RFC 3986, a Envoy stosuje routing lub RBAC do nieskróconej ścieżki, zdalny klient może wywołać zamieszanie ścieżek i obejść politykę bezpieczeństwa opartą na ścieżce.
- CVE-2026-73511Średnie
W Envoy przed wersjami 1.36.10, 1.37.6, 1.38.4 i 1.39.1 Envoy normalnie dopasowuje surową ścieżkę żądania, podczas gdy backendy servletowe, takie jak Apache Tomcat, usuwają parametry macierzy średnika z każdego segmentu ścieżki przed rozwiązaniem zasobu. Opcja ignore_path_parameters_in_path_matching zamiast tego obcina na pierwszym średniku i nadal nie dopasowuje zachowania backendu per-segment. Zdalny klient może użyć parametryzowanego chronionego segmentu, aby Envoy wybrał niechroniony fallback, podczas gdy backend rozwiązuje chroniony zasób.
- CVE-2026-73552Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 — mechanizm HTTP RBAC akceptuje poprawne pod względem RFC nieprzezroczyste bajty nagłówka, ale ocenia wartości safe_regex z semantyką podmiotu UTF-8 w RE2. Klient niższego szczebla może zachować zabroniony znacznik i dodać niepowiązany oktet obs-text, powodując, że RE2::FullMatch zwraca false, a polityka negatywna RBAC traktuje nieprawidłowy podmiot jako zwykły brak dopasowania. Dopasowywacz tras zorientowany na bajty może nadal zaobserwować znacznik, co pozwala żądaniu dotrzeć do trasy, która powinna być zablokowana. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73550Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 kopiuje każdą zdekodowaną wartość nagłówka Host HTTP/2 przed jej odrzuceniem, gdy :authority jest już obecne. Odrzucona wartość omija saveHeader, więc jej bajty i liczba nie są wliczane do limitów nagłówków żądania. Nieuwierzytelniony klient może użyć indeksowania HPACK, aby przesłać wiele odwołań do dużej wartości Host w ograniczonej liczbie strumieni, wymuszając ekstremalną alokację kopii nagłówków i doprowadzając do zabicia proxy przez OOM. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73549Średnie
Envoy przed wersjami 1.36.10, 1.37.6, 1.38.4 i 1.39.1 ma podatność w ścieżkach Utility::copyInternetAddressAndPort oraz QUIC client-address, które rekonstruują adresy IPv6 ze scopem. Ciąg zawiera identyfikator zakresu (percent scope), którego inet_pton nie może sparsować, co powoduje wyjątek lub przerwanie działania. Wdrożenia transparent-proxy z ORIGINAL_DST oraz dotknięte ścieżki QUIC mogą zakończyć proces. Problem naprawiono w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73548Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 przekazuje dane dla skonfigurowanej aktualizacji HTTP innej niż WebSocket, zanim serwer nadrzędny zaakceptuje aktualizację. Nieuwierzytelniony klient HTTP/2 może umieścić kompletne żądanie HTTP/1.1 w danych rozszerzonego CONNECT; Envoy degraduje żądanie, zapisuje dane bez ramkowania do utrzymującego połączenie serwera nadrzędnego HTTP/1.1 i zwraca gniazdo do współdzielonej puli, podczas gdy przemycona odpowiedź pozostaje w kolejce. Inny klient niższego szczebla może następnie otrzymać odpowiedź atakującego. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73547Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 — filtr ext_authz zakłada, że żądanie zawiera pseudoheader :path podczas stosowania query_parameters_to_set lub query_parameters_to_remove z odpowiedzi autoryzacyjnej. Żądanie CONNECT bez ścieżki powoduje, że request_headers_->Path() zwraca null, a Filter::onComplete dereferencjonuje ten wskaźnik podczas parsowania ciągu zapytania. Nieuwierzytelniony klient niższego szczebla może spowodować awarię procesu Envoy, gdy filtr i odpowiedź autoryzacyjna używają modyfikacji parametrów zapytania. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73546Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 — punkt końcowy administracyjny /stats?format=html używa StatsHtmlRender, który sanityzuje wartości statystyk tekstowych, ale emituje nazwy statystyk bez kodowania HTML. Komponent płaszczyzny danych, taki jak grpc_stats z włączonym stats_for_all_methods, może włączyć kontrolowane przez atakującego segmenty ścieżki do buforowanych dynamicznych nazw statystyk. Gdy operator wyświetla stronę statystyk HTML, zapisana nazwa może wykonać skrypt w kontekście interfejsu administracyjnego i wysłać uprzywilejowane żądania tego samego pochodzenia. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73513Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 — opcjonalny kodek HTTP/2 dla serwera nadrzędnego oghttp2 akceptuje ramkę nagłówków traylera odpowiedzi HEADERS bez END_STREAM. Envoy kończy i odracza usunięcie ActiveRequest, podczas gdy oghttp2 utrzymuje strumień otwarty, pozostawiając ClientStreamImpl z wiszącym odwołaniem response_decoder_. Późniejsza ramka w strumieniu może wywołać zwolniony obiekt i spowodować awarię procesu. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-73512Wysokie
Envoy w wersjach przed 1.36.10, 1.37.6, 1.38.4 i 1.39.1 — HttpDatagramHandler buforuje bieżący RequestDecoder, gdy włączony jest Capsule Protocol. Odtworzenie strumienia, w tym przekierowanie wewnętrzne, zastępuje ActiveStream i aktualizuje EnvoyQuicServerStream, ale nie aktualizuje buforowanego wskaźnika handlera. Kolejny datagram HTTP/3 może wywołać decodeData przez zwolniony dekoder, powodując nieprawidłowe wywołanie wirtualne i awarię procesu. Luka została naprawiona w wersjach 1.36.10, 1.37.6, 1.38.4 i 1.39.1.
- CVE-2026-50572Średnie
W Envoy przed wersjami 1.36.10, 1.37.6, 1.38.4 i 1.39.1 klient zewnętrznej autoryzacji HTTP może zachować nieaktualny callback po odrzuceniu żądania. Późniejsze przetworzenie odpowiedzi autoryzacyjnej wywołuje callback po zniszczeniu jego właściciela, powodując use-after-free i awarię procesu.
- CVE-2026-48521Średnie
W Envoy przed wersjami 1.36.10, 1.37.6, 1.38.4 i 1.39.1 funkcja allocateConnPool odwołuje się do transport_socket_options bez sprawdzenia, czy wskaźnik nie jest pusty. Przy włączonym auto_config i HTTP/3 zwykły ruch może wywołać awarię procesu roboczego Envoy.
- 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.
- 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.
- CVE-2026-47774Wysokie
Envoy, otwartoźródłowy proxy brzegowy i usługowy, zawiera podatność w przetwarzaniu żądań HTTP/2 downstream. Nieuwierzytelniony zdalny klient może wywołać nadmierne zużycie pamięci, prowadzące do OOM i odmowy usługi. Problem wynika z niepełnego uwzględniania bajtów nagłówka cookie podczas walidacji rozmiaru nagłówka żądania oraz braku limitu na całkowity zdekodowany rozmiar nagłówka w HPACK.
- CVE-2023-35944Wysokie
Envoy to otwarte źródło proxy brzegowe i serwisowe, które przed wersjami 1.27.0, 1.26.4, 1.25.9, 1.24.10 i 1.23.12 miało problem z rozróżnianiem wielkości liter w schematach HTTP/2. To mogło prowadzić do odrzucania żądań z mieszanymi schematami lub omijania niektórych żądań w połączeniach niezaszyfrowanych.
- CVE-2023-35943Średnie
Podatność w Envoy, która powoduje awarię aplikacji przy usunięciu nagłówka `origin` między `decodeHeaders` a `encodeHeaders`. Wersje 1.27.0, 1.26.4, 1.25.9, 1.24.10 i 1.23.12 zawierają poprawkę dla tego problemu.
- CVE-2023-35942Średnie
W Envoy, przed wersjami 1.27.0, 1.26.4, 1.25.9, 1.24.10 i 1.23.12, logi dostępu gRPC korzystające z globalnego zakresu słuchacza mogą powodować awarię `use-after-free` podczas opróżniania słuchacza. Wersje 1.27.0, 1.26.4, 1.25.9, 1.24.10 i 1.23.12 zawierają poprawkę dla tego problemu.
- CVE-2023-35941Wysokie
W Envoy, przed wersjami 1.27.0, 1.26.4, 1.25.9, 1.24.10 i 1.23.12, złośliwy klient może skonstruować poświadczenia o stałej ważności w określonych scenariuszach. Problem ten wynika z rzadkich sytuacji, w których ładunek HMAC może być zawsze uznawany za ważny w weryfikacji filtra OAuth2.
- CVE-2023-35945Wysokie
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.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

