CVE-2026-45372 cpp-httplib: HTTP header value percent-decoding in server-side `parse_header` enables CRLF injection

Critical 9.9 Published Updated

Attackers can inject CRLF sequences into HTTP headers via percent-encoded values, potentially enabling response splitting or header manipulation.

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-45372?

CVE-2026-45372 is a critical vulnerability in yhirose cpp-httplib, published on 29 May 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 0.44.0, when cpp-httplib's server parses an incoming request, it applies percent-decoding to every header value except Location and Referer. The validity check (is_field_value) is run before decoding, so encoded %0D%0A passes the check and is then expanded to a literal \r\n byte pair inside the stored header value. This vulnerability is fixed in 0.44.0.

Weakness: CWE-93, CWE-444

Which versions are affected by CVE-2026-45372?

It affects 1 product.

Products include Yhirose Cpp-Httplib.

How do I fix CVE-2026-45372?

Upgrade to a fixed version.

Is CVE-2026-45372 being exploited?

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

Sources

Also known as DEBIAN-CVE-2026-45372, GHSA-xjxg-64p4-vj4m, UBUNTU-CVE-2026-45372, USN-8470-1.

Is CVE-2026-45372 in your software?

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

Check your SBOMs for free