Katalog CVE

CVE-2026-43966

ŚrednieCVSS 5.3
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.45%

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

Streszczenie

Podatność w bibliotece cowlib (od wersji 2.9.0) polega na nieprawidłowej neutralizacji sekwencji CRLF w nagłówkach HTTP, co umożliwia atak typu HTTP response splitting. Funkcja cow_http_struct_hd:escape_string/2 w cowlib ucieka tylko znaki \ i ", przekazując wszystkie inne bajty bez zmian, co tworzy asymetrię między kodowaniem a dekodowaniem. Atakujący może wstrzyknąć \r\n do serializowanego nagłówka, co pozwala na dodanie nowych nagłówków i potencjalne rozdzielenie odpowiedzi HTTP.

Ocena ryzyka

Ryzyko obejmuje możliwość manipulacji odpowiedziami HTTP, co może prowadzić do wstrzykiwania treści, przejęcia sesji lub innych ataków typu response splitting. Podatność dotyczy aplikacji korzystających z cowlib do budowania nagłówków HTTP.

Rekomendacja

Zaleca się aktualizację cowlib do wersji zawierającej poprawkę dla tego problemu. Należy również dokładnie walidować dane wejściowe przed użyciem w funkcjach budowania nagłówków HTTP.

Inne podatności w cowlib

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

Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting') vulnerability in ninenines cowlib allows HTTP response splitting via non-VCHAR bytes in structured-fields string values. cow_http_struct_hd:escape_string/2 in cowlib only escapes \ and ", passing all other bytes through verbatim. This creates an encoder/decoder asymmetry: the matching parser accepts only printable ASCII (0x20–0x7E, excluding " and \), but the encoder emits any byte including CR and LF. An application that builds a structured HTTP header via cow_http_struct_hd:item/1 (or a higher-level wrapper such as cow_http_hd:wt_protocol/1) from attacker-controlled input can have \r\n injected into the serialized header value. Once on the wire, the injected CRLF terminates the current header and any following bytes are interpreted as a new header, enabling HTTP response splitting. This issue affects cowlib: from 2.9.0 onward.

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