All vulnerabilities
CVE-2026-113436GHSA-29cr-8477-rg6r

Quadratic bignum parsing of Content-Length and Host port values in Bandit

mtrudel bandit
CVSS
8.7High
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)No scoreNo FIRST EPSS score in this snapshot yet
Fixed in1.14.0Also 220b9dfd27f9a21305be2afc75cbe585ddc24e7aCVE List
Published26 Oct 2026Updated 26 Oct 2026CVE List

What fixes it

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

Inefficient Algorithmic Complexity vulnerability in the header integer parser of mtrudel bandit allows an unauthenticated remote attacker to consume server CPU via a content-length value or a Host or :authority port made of thousands of digits.

Bandit.Headers.parse_integer/2 in lib/bandit/headers.ex builds the number one digit at a time with no limit on the digit count, allocating a new bignum at each step, so one value costs time quadratic in its length. It runs on raw request input over HTTP/1 and HTTP/2, before any range check. Over HTTP/2, a 4,000-digit value can be stored once in the HPACK dynamic table and re-sent on each new stream for about one byte: 124 KB of traffic kept the server busy for 27.9 s.

This issue affects bandit: from 1.0.0-pre.7 before 1.14.0.

Text from CVE List

Affected versions 2

  • banditaffected: 1.0.0-pre.7 before 1.14.0CVE List
  • banditaffected: e0c8c0c30af9b0f57d8aafac37ddd9294363a8be before 220b9dfd27f9a21305be2afc75cbe585ddc24e7aCVE List

References 5