CVE-2026-7790CWE-400

Unbounded chunk-size hex digits in cowlib cause quadratic CPU and memory DoS

High · published May 11, 2026

CVSS v4.0
8.7
EPSS
1%
Percentile
55.9
In the wild
Unconfirmed
What it is

Uncontrolled Resource Consumption vulnerability in ninenines cowlib (cow_http_te module) allows Excessive Allocation.

The chunked transfer-encoding parser in cow_http_te accepts an unbounded number of hex digits in the chunk-size field. Each digit causes a bignum multiplication (Len * 16 + digit), so parsing N hex digits requires O(N²) CPU work and O(N) memory. Additionally, when input is drip-fed, the parser discards the accumulated length on each partial read and restarts from zero on resumption, raising the cost to O(N³). An unauthenticated remote attacker can exploit this by sending an HTTP/1.1 request with Transfer-Encoding: chunked and a very long chunk-size hex string to cause denial of service through CPU exhaustion and memory amplification.

This vulnerability is associated with program file src/cow_http_te.erl and program routines cow_http_te:stream_chunked/2, cow_http_te:chunked_len/4.

This issue affects cowlib: from 0.6.0 before 2.16.1.

The record
Technical detail
CVSS v4.0
8.7 · HIGH
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
EPSS
0.00793 · 55.9th percentile
Weakness
CWE-400 · Uncontrolled Resource Consumption
Published
2026-05-11T18:06Z
EPSS history
Timeline
  • 11 MAY 18:06Z
    Unbounded chunk-size hex digits in cowlib cause quadratic CPU and memory DoS
    cvelistv5