PatchSiren

PatchSiren cyber security CVE debrief

CVE-2026-39805 mtrudel CVE debrief

The CVE record describes an Inconsistent Interpretation of HTTP Requests vulnerability in mtrudel bandit, which allows HTTP request smuggling via duplicate Content-Length headers. The issue arises from the 'Elixir.Bandit.Headers':get_content_length/1 function in lib/bandit/headers.ex, which uses List.keyfind/3 to return only the first matching header. This can lead to an unauthenticated attacker smuggling requests past edge WAF rules, path-based ACLs, rate limiting, and audit logging when Bandit sits behind a proxy that picks the last Content-Length value and forwards the request rather than rejecting it.

Vendor
mtrudel
Product
bandit
CVSS
MEDIUM 6.3
CISA KEV
Not listed in stored evidence
Original CVE published
2026-05-01
Original CVE updated
2026-07-24
Advisory published
2026-05-01
Advisory updated
2026-07-24

Who should care

Users of bandit before version 1.11.0 should be aware of this vulnerability and take steps to mitigate it. This includes updating to a patched version of bandit and verifying that any proxies or edge security measures are properly configured to handle duplicate Content-Length headers.

Technical summary

The vulnerability is caused by the 'Elixir.Bandit.Headers':get_content_length/1 function in lib/bandit/headers.ex using List.keyfind/3, which returns only the first matching header. When a request contains two Content-Length headers with different values, Bandit silently accepts it, uses the first value to read the body, and dispatches the remaining bytes as a second pipelined request on the same keep-alive connection. This is a violation of RFC 9112 §6.3, which requires recipients to treat this as an unrecoverable framing error.

Defensive priority

High

Recommended defensive actions

  • Update bandit to version 1.11.0 or later
  • Verify proxy configurations to ensure proper handling of duplicate Content-Length headers
  • Monitor for suspicious traffic patterns that may indicate exploitation
  • Review compensating controls for exposed systems while remediation is scheduled and verified
  • Check relevant monitoring, detection, and logs for exposed assets that need extra review
  • Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up
  • Review the supplied official advisory or CVE record to validate affected scope, severity, and vendor guidance

Evidence notes

The CVE record and source references provide evidence of the vulnerability and its impact. However, further testing and verification are necessary to fully understand the scope of the issue and ensure that mitigations are effective.

Sources and references

Verified primary and authoritative sources

  • CVE-2026-39805 CVE Program record

    Publisher, destination, and source semantics verified

    URL: https://www.cve.org/CVERecord?id=CVE-2026-39805

    CVE Program - Official CVE Program record with source-provided CVE metadata.

  • CVE-2026-39805 NVD vulnerability detail

    Publisher, destination, and source semantics verified

    URL: https://nvd.nist.gov/vuln/detail/CVE-2026-39805

    NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.

Supplemental references

  • Source reference

    Unverified legacy reference

    URL: https://cna.erlef.org/cves/CVE-2026-39805.html

    6b3ad84c-e1a6-4bf7-a703-f496b71e49db

  • Source reference

    Unverified legacy reference

    URL: https://github.com/mtrudel/bandit/commit/f2ca636eb6df385219957e8934e9fc6efa1630d1

    6b3ad84c-e1a6-4bf7-a703-f496b71e49db

  • Source reference

    Unverified legacy reference

    URL: https://github.com/mtrudel/bandit/security/advisories/GHSA-c67r-gc9j-2qf7

    6b3ad84c-e1a6-4bf7-a703-f496b71e49db

  • Source reference

    Unverified legacy reference

    URL: https://osv.dev/vulnerability/EEF-CVE-2026-39805

    6b3ad84c-e1a6-4bf7-a703-f496b71e49db

Methodology and review provenance

AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.