yhirose cpp-httplib up to 0.34.x Request Body httplib.h set_payload_max_length resource consumption
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.3 | $0-$5k | 0.00 |
Summary
A vulnerability was found in yhirose cpp-httplib up to 0.34.x. It has been classified as problematic. Affected by this vulnerability is the function Server::set_payload_max_length in the library httplib.h of the component Request Body Handler. Performing a manipulation results in resource consumption.
This vulnerability was named CVE-2026-28435. The attack may be initiated remotely. There is no available exploit.
Upgrading the affected component is recommended.
Details
A vulnerability, which was classified as problematic, was found in yhirose cpp-httplib up to 0.34.x. This affects the function Server::set_payload_max_length in the library httplib.h of the component Request Body Handler. The manipulation with an unknown input leads to a resource consumption vulnerability. CWE is classifying the issue as CWE-400. The product does not properly control the allocation and maintenance of a limited resource, thereby enabling an actor to influence the amount of resources consumed, eventually leading to the exhaustion of available resources. This is going to have an impact on availability. The summary by CVE is:
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.
It is possible to read the advisory at github.com. This vulnerability is uniquely identified as CVE-2026-28435 since 02/27/2026. The exploitability is told to be easy. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. Technical details of the vulnerability are known, but there is no available exploit. The attack technique deployed by this issue is T1499 according to MITRE ATT&CK.
The vulnerability scanner Nessus provides a plugin with the ID 301043 (Linux Distros Unpatched Vulnerability : CVE-2026-28435), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 0.35.0 eliminates this vulnerability. Applying the patch c99d7472b5cf4869d3897b9afc9792063a3d15a8 is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the vulnerability database at Tenable (301043). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Vendor
Name
Version
- 0.1
- 0.2
- 0.3
- 0.4
- 0.5
- 0.6
- 0.7
- 0.8
- 0.9
- 0.10
- 0.11
- 0.12
- 0.13
- 0.14
- 0.15
- 0.16
- 0.17
- 0.18
- 0.19
- 0.20
- 0.21
- 0.22
- 0.23
- 0.24
- 0.25
- 0.26
- 0.27
- 0.28
- 0.29
- 0.30
- 0.31
- 0.32
- 0.33
- 0.34
License
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.4VulDB Meta Temp Score: 6.3
VulDB Base Score: 5.3
VulDB Temp Score: 5.1
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 7.5
CNA Vector (GitHub_M): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Resource consumptionCWE: CWE-400 / CWE-404
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 301043
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-28435
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: cpp-httplib 0.35.0
Patch: c99d7472b5cf4869d3897b9afc9792063a3d15a8
Timeline
02/27/2026 CVE reserved03/05/2026 Advisory disclosed
03/05/2026 VulDB entry created
03/08/2026 VulDB entry last update
Sources
Product: github.comAdvisory: GHSA-xvfx-w463-6fpp
Status: Confirmed
CVE: CVE-2026-28435 (🔒)
GCVE (CVE): GCVE-0-2026-28435
GCVE (VulDB): GCVE-100-348843
Entry
Created: 03/05/2026 02:39Updated: 03/08/2026 04:20
Changes: 03/05/2026 02:39 (69), 03/08/2026 04:20 (2)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.