CVE Catalog

CVE-2026-47066

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Elevated risk
0.75%

51th percentile - higher than 51% of all known CVEs

Summary

The hackney library versions 2.0.0-beta.1 up to (but not including) 4.0.1 contains an infinite loop vulnerability in the Alt-Svc header parser. The parse_token/2 function does not guarantee forward progress for certain bytes, leading to a recursive loop consuming 100% CPU. An Alt-Svc: ! header is sufficient to trigger the vulnerability.

Risk Assessment

An attacker can send an HTTP response with a crafted Alt-Svc header, causing the client process to hang indefinitely (100% CPU), leading to denial of service (DoS) for that process.

Recommendation

Update the hackney library to version 4.0.1 or later. If an update is not possible, consider filtering or ignoring Alt-Svc headers at the proxy level.

Other vulnerabilities in hackney

See all
Original NVD description (English source)

Loop with Unreachable Exit Condition ('Infinite Loop') vulnerability in benoitc hackney allows Excessive Allocation. The Alt-Svc response header parser in src/hackney_altsvc.erl does not guarantee forward progress. When parse_token/2 receives a non-token, non-whitespace, non-comma byte (e.g. !, @, =, ;), it returns the input unchanged. skip_comma/1 also returns the buffer unchanged when the first byte is not a comma. parse_entries/2 then recurses with identical data, creating a tight infinite tail-recursive loop that pins a scheduler at 100% CPU. The calling process never returns. The entry point parse_and_cache/3 is called synchronously in the connection process on every HTTP response. A single-byte Alt-Svc: ! response header is sufficient to trigger the hang; the header is fully controlled by any HTTP origin the client connects to. This issue affects hackney: from 2.0.0-beta.1 before 4.0.1.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS