Serwer HTTP h2o jest podatny na atak powodujący wyczerpanie zasobów poprzez połączenie amplifikacji dekompresji HPACK z techniką Slowloris polegającą na celowym zatrzymywaniu strumieni HTTP/2. Atakujący zdalnie i bez uwierzytelnienia może doprowadzić do odmowy usługi (DoS).
▸ Pokaż oryginał (EN)
h2o is an HTTP server with support for HTTP/1.x, HTTP/2 and HTTP/3. Prior to commit 9265bdd, there is an HTTP/2 state amplification issue that combines HPACK decompression amplification with Slowloris-style stream stalling. Amplified decoded header state can be retained by stalled HTTP/2 streams, and depending on the configuration, additional limits are needed to bound decoded header state and prevent attack. This issue has been fixed by commit 9265bdd.
Podatność polega na tym, że zdekompresowane nagłówki HTTP/2 (rozwinięte przez mechanizm HPACK) mogą być wielokrotnie większe niż dane przesłane przez sieć. Atakujący celowo wstrzymuje (stall) strumienie HTTP/2 w stylu Slowloris, co powoduje, że amplifikowany, zdekompresowany stan nagłówków jest przetrzymywany w pamięci serwera przez długi czas. Bez odpowiednich dodatkowych limitów konfiguracyjnych serwer nie jest w stanie ograniczyć ilości akumulowanego stanu nagłówków, co prowadzi do nadmiernego zużycia zasobów.
Atakujący może doprowadzić do wyczerpania zasobów serwera (pamięci), skutkując odmową usługi (DoS) i niedostępnością obsługiwanych aplikacji dla legalnych użytkowników.
Należy zaktualizować h2o do wersji zawierającej commit 9265bdd (lub nowszej). Szczegóły dostępne w referencjach projektu: https://github.com/h2o/h2o/commit/9265bdd9a996ed992681055e3996baf3e09d2063. Dodatkowo, zgodnie z opisem podatności, warto zweryfikować konfigurację serwera pod kątem limitów na zdekompresowany stan nagłówków HTTP/2.
Serwer HTTP h2o we wszystkich wersjach poprzedzających commit 9265bdd9a996ed992681055e3996baf3e09d2063
Podatność naprawiona konkretnym commitem (9265bdd). Atak nie wymaga uwierzytelnienia ani interakcji użytkownika (AV:N/AC:L/PR:N/UI:N), co zwiększa ryzyko masowego wykorzystania.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HH2o
APPH2O2026-05-29 – 2026-06-04 (bez)
Powiązane podatności
RCE przez obejście blacklisty JDBC w REST API H2O-3
Deserializacja w H2O umożliwia RCE i odczyt plików systemowych
RCE poprzez deserializację w REST API h2oai/h2o-3 (JDBC URL)
H2O.ai H2O — RCE i odczyt plików przez niekontrolowany JDBC URL
RCE w H2O poprzez funkcję importu modelu POJO