CVE-2026-29076 cpp-httplib: Stack Overflow Denial of Service (DoS) via std::regex in multipart filename parsing

Medium 5.9 Published Updated

An attacker can crash the server by sending a crafted HTTP POST request with a malicious multipart filename, causing a stack overflow in the cpp-httplib library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-29076?

CVE-2026-29076 is a medium-severity denial of service vulnerability in yhirose cpp-httplib, published on 7 Mar 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. Prior to version 0.37.0, cpp-httplib uses std::regex (libstdc++) to parse RFC 5987 encoded filename* values in multipart Content-Disposition headers. The regex engine in libstdc++ implements backtracking via deep recursion, consuming one stack frame per input character. An attacker can send a single HTTP POST request with a crafted filename* parameter that causes uncontrolled stack growth, resulting in a stack overflow (SIGSEGV) that crashes the server process. This issue has been patched in version 0.37.0.

Weakness: CWE-674, CWE-1333

Which versions are affected by CVE-2026-29076?

It affects 1 product.

Products include Yhirose Cpp-Httplib.

How do I fix CVE-2026-29076?

Upgrade to a fixed version.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2026-29076 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-29076 exists.

Sources

Also known as DEBIAN-CVE-2026-29076, GHSA-qq6v-r583-3h69, UBUNTU-CVE-2026-29076.

Is CVE-2026-29076 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free