CRITICAL🇬🇧 English

CVE-2019-18801

Envoy 1.12.0: zapis poza buforami żądania HTTP/2 prowadzący do RCE lub bypass ACL

CVSS 9.8v3.1pub. 2019-12-13upd. 2024-11-21

W Envoy 1.12.0 niezaufany zdalny klient może wysyłać żądania HTTP/2, które powodują zapis poza przeznaczonymi buforami na stercie (heap), gdy upstream korzysta z HTTP/1. Podatność ma ocenę CVSS 9.8 i umożliwia atakującemu zdalne przejęcie kontroli nad serwerem proxy lub ominięcie mechanizmów kontroli dostępu.

Pokaż oryginał (EN)

An issue was discovered in Envoy 1.12.0. An untrusted remote client may send HTTP/2 requests that write to the heap outside of the request buffers when the upstream is HTTP/1. This may be used to corrupt nearby heap contents (leading to a query-of-death scenario) or may be used to bypass Envoy's access control mechanisms such as path based routing. An attacker can also modify requests from other users that happen to be proximal temporally and spatially.

🤖 Analiza AI
Jak działa

Atakujący wysyła specjalnie spreparowane żądania HTTP/2 do Envoy działającego jako proxy z upstreamem HTTP/1. Błędna obsługa translacji protokołów powoduje zapis danych poza przydzielonymi buforami żądania na stercie (heap out-of-bounds write, CWE-787). Skutkuje to uszkodzeniem przyległych obszarów pamięci, co może prowadzić do scenariusza tzw. query-of-death (crash serwera) lub manipulacji danymi w pamięci. Ponadto atakujący może modyfikować żądania innych użytkowników przetwarzane w tym samym czasie i w bliskim sąsiedztwie pamięciowym.

Skutki

Atakujący może doprowadzić do uszkodzenia sterty i awarii serwera proxy (denial of service), ominąć mechanizmy kontroli dostępu Envoy (np. routing oparty na ścieżce), a także modyfikować żądania innych użytkowników lub uzyskać nieautoryzowany dostęp do chronionych zasobów.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dostępna jest również errata Red Hat: RHSA-2019:4222. Zaleca się śledzenie oficjalnych komunikatów bezpieczeństwa pod adresem https://github.com/envoyproxy/envoy/security/advisories/GHSA-gxvv-x4p2-rppp oraz jak najszybsze zaktualizowanie Envoy do wersji wolnej od podatności.

Kogo dotyczy

Envoyproxy Envoy w wersji 1.12.0

Uwagi

Podatność dotyczy wyłącznie konfiguracji, w której frontend Envoy obsługuje HTTP/2, a upstream korzysta z HTTP/1. Brak tej konfiguracji eliminuje wektor ataku.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Envoyproxy Envoy

    APP
    Envoyproxy
    ≤ 1.12.1
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2022-29226CRITICAL10.0PL ✓ten sam produkt

Envoy OAuth filter: pominięcie walidacji access tokena umożliwia nieautoryzowany dostęp

CVE-2019-18802CRITICAL9.8PL ✓ten sam produkt

Bypass mechanizmów kontroli dostępu przez białe znaki w nagłówkach HTTP w Envoy

CVE-2023-44487HIGH7.5⚠ KEVten sam produkt

The HTTP/2 protocol allows a denial of service (server resource consumption) because request cancellation can ...

CVE-2026-47220HIGH7.5PL ✓ten sam produkt

Envoy Proxy: NULL pointer dereference powodujący crash przy braku nagłówka hosta

CVE-2026-48042HIGH7.5PL ✓ten sam produkt

Envoy Proxy: stack overflow przy głęboko zagnieżdżonych obiektach JSON