Katalog CVE

CVE-2026-111103

WysokieCVSS 8.2
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Podwyższone ryzyko
0.63%

Percentyl 50 - wyżej niż 50% wszystkich znanych CVE

Streszczenie

Podatność w obsłudze HTTP/2 w bibliotece Bandit (Elixir) polega na nieprawidłowym czyszczeniu stanu po wyjątku StreamError. Atakujący może obejść limity zasobów na połączenie, wysyłając wiele ramek w jednym zapisie TCP, z których jedna powoduje błąd strumienia, co prowadzi do uruchomienia większej liczby równoległych strumieni niż dozwolona.

Ocena ryzyka

Nieuwierzytelniony atakujący może obejść limity współbieżnych strumieni i żądań, przeciążając serwer i powodując odmowę usługi.

Rekomendacja

Zaktualizuj bibliotekę Bandit do wersji 1.14.0 lub nowszej, która zawiera poprawkę prawidłowego czyszczenia stanu po wyjątku.

Inne podatności w Bandit

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Improper Cleanup on Thrown Exception vulnerability in the HTTP/2 handler of mtrudel bandit allows an unauthenticated remote attacker to bypass per-connection resource limits via a single TCP write that carries several frames, one of which raises a stream error. When a frame raises StreamError partway through a chunk, Bandit.HTTP2.Handler.handle_data/3 sends RST_STREAM and continues with the connection state from before the chunk, dropping the rest of it. Streams opened by earlier frames in the chunk keep running their Plug calls, but the stream counts, last_stream_id, the rapid-reset timestamps, the HPACK decoder state and the buffer roll back, so max_concurrent_streams, max_requests and the rapid-reset limiter never see those streams. A client that sends one HEADERS frame more than max_concurrent_streams in each write has the extra refused and the others forgotten: with a limit of 10, five such writes run 50 Plug calls at once. This issue affects bandit: from 1.9.0 before 1.14.0.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS