Skip to main content
VulnerabilityPublished

CVE-2026-39805: Bandit is vulnerable to CL.CL request smuggling via unrejected duplicate `Content-Length` header

Affects banditSource GCVE Database

0
Authoritative record:CVE-2026-39805· Medium 6.3

Not known to be exploited · CVSS 6.3 Medium : upgrade to 1.11.0 when convenient.

Data as of 27 Oct 2026, 02:39 UTC

CVSS 4.0 base score
6.3Medium
How severe the flaw is on the 0–10 CVSS scale.
Patch
Available – fixed in 1.11.0
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 1 May 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade bandit to 1.11.0.

Affected software

ProductAffectedFixed in
HexbanditAffected
  • <1.11.0
Fixed in
  • 1.11.0

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

A fix is available in Bandit version 1.11.0, which correctly rejects requests containing multiple Content-Length headers with differing values. Users should upgrade to version 1.11.0 or later. If upgrading is not immediately possible, ensure that any fronting proxies or load balancers strictly reject requests with multiple differing Content-Length headers to prevent request smuggling. Major CDNs and load balancers such as Cloudflare, AWS ALB, nginx (default strict mode), and HAProxy already reject such requests by default.

Description

Bandit versions prior to 1.11.0 are vulnerable to HTTP request smuggling due to improper handling of multiple differing Content-Length headers. Bandit accepts the first Content-Length header and dispatches the request body bytes as a second request on the same connection, violating RFC 9110 and RFC 9112 specifications. This can allow an unauthenticated attacker to bypass edge security controls like WAFs, ACLs, rate limiting, and audit logging if Bandit is behind a permissive proxy that uses the last Content-Length header. The vulnerability was introduced before version 0.1.0 and fixed in version 1.11.0.

References

Community reviews

Loading reviews…