CVE Catalog

CVE-2026-84380

MediumCVSS 5.6
Published: Updated: Translated: NVD NIST

Summary

In HTTPX2 prior to version 2.11.0, a vulnerability was found in Request._prepare() in src/httpx2/httpx2/_models.py. It can add a body-derived Content-Length header to a request that already contains a caller-supplied Transfer-Encoding header because its setdefault() processing checks each default header independently rather than treating the two framing headers as mutually exclusive. This can allow request smuggling or connection desynchronization.

Risk Assessment

The vulnerability may allow an attacker to perform HTTP request smuggling, potentially leading to request integrity violations, bypassing security controls, or attacks against other users.

Recommendation

It is recommended to upgrade to version 2.11.0, which fixes the issue.

Other vulnerabilities in HTTPX2

See all
Original NVD description (English source)

HTTPX2 is a next generation HTTP client for Python. Prior to 2.11.0, Request._prepare() in src/httpx2/httpx2/_models.py can add a body-derived Content-Length header to a request that already contains a caller-supplied Transfer-Encoding header because its setdefault() processing checks each default header independently rather than treating the two framing headers as mutually exclusive. Fixed-size byte, JSON, form, and known-length multipart bodies can therefore be serialized over HTTP/1.1 with both headers, allowing request smuggling or connection desynchronization when downstream intermediaries disagree about which framing header takes precedence. This issue is fixed in version 2.11.0.

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