Vulnerability · Published Mar 4, 2026 · Assigned by GitHub_M
CVE-2026-28435Payload size limit bypass via gzip decompression in ContentReader (streaming) allows oversized request bodies in cpp-httplib
High 7.5
In plain English
A high-severity uncontrolled resource consumption in cpp-httplib from yhirose. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 41% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. Prior to 0.35.0, cpp-httplib (httplib.h) does not enforce Server::set_payload_max_length() on the decompressed request body when using HandlerWithContentReader (streaming ContentReader) with Content-Encoding: gzip (or other supported encodings). A small compressed payload can expand beyond the configured payload limit and be processed by the application, enabling a payload size limit bypass and potential denial of service (CPU/memory exhaustion). This vulnerability is fixed in 0.35.0.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | cpp-httplib | no fix listed | DEBIAN-CVE-2026-28435 |
| Debian:13 | cpp-httplib | no fix listed | DEBIAN-CVE-2026-28435 |
| Debian:14 | cpp-httplib | 0.41.0+ds-3 | DEBIAN-CVE-2026-28435 |
| Ubuntu:25.10 | cpp-httplib | no fix listed | UBUNTU-CVE-2026-28435 |
| Ubuntu:26.10 | cpp-httplib | no fix listed | UBUNTU-CVE-2026-28435 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| yhirose | cpp-httplib | < 0.35.0 |
Weakness: CWE-400, CWE-409 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H