LiveActive security incident?Get immediate response
CVE Record

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

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.

CriticalCVSS 9.9Not KEV-listedUpdated
Glexia's TakeAutomated analysiscritical

Security readout for executives and security teams

Plain-English summary

CVE-2026-45372 affects applications using yhirose cpp-httplib before 0.44.0 as a server. A malformed request header can be decoded into embedded line breaks after validation, creating CRLF/header-injection risk. The CVSS score is 9.9, so exposed services should treat this as urgent if they embed this library.

Executive priority

High priority for any internet-facing or partner-facing C++ service using cpp-httplib before 0.44.0. The business risk is request header manipulation that could affect integrity across trust boundaries. If the library is not present, no action is needed beyond documenting non-exposure.

Technical view

Server-side parse_header validates header values before percent-decoding. Before 0.44.0, most header values except Location and Referer could decode encoded CRLF into literal \r\n inside stored header data. This maps to CWE-93 and CWE-444, with high integrity impact and changed scope in the published CVSS vector.

Likely exposure

Exposure is likely where C++ services vendor or link yhirose cpp-httplib versions before 0.44.0 and accept untrusted HTTP requests. Header-only libraries are often copied directly into source trees, so dependency scanners may miss them without source and SBOM review.

Exploitation context

The provided sources do not show active exploitation, and the CVE is not marked KEV. The issue is remotely reachable, unauthenticated, and low complexity according to CVSS, but source evidence does not identify public exploit code or real-world attacks.

Researcher notes

Evidence is strong for the root cause and fixed version, but limited to the CVE record and GitHub advisory. Do not assume downstream impact beyond CRLF/header injection without analyzing how the application consumes stored header values.

Mitigation direction

  • Upgrade yhirose cpp-httplib to version 0.44.0 or later.
  • Search source trees for vendored cpp-httplib headers below 0.44.0.
  • Prioritize internet-facing services that parse untrusted HTTP requests with cpp-httplib.
  • Review the GitHub advisory for any newer vendor guidance.
  • Retest request handling after upgrading to confirm no application regressions.

Validation and detection

  • Confirm whether the service embeds yhirose cpp-httplib server functionality.
  • Verify the exact cpp-httplib version in source, submodules, packages, and SBOMs.
  • Check whether affected services accept external HTTP traffic.
  • Review code paths that reuse parsed request headers in responses or downstream requests.
  • Run safe regression tests for encoded line-break handling in headers.
Prepared
Confidence
high
Sources
3

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-444: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cwe · low confidence lookup

CWE-93: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2026-45372 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Critical
CVSS
9.9 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
3Timeline events
1ADP providers
2Source links

SSVC decision data

CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: partial

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
9.9CVSS 3.1CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L3.95.3GitHub_M

Vulnerability scoring details

Base CVSS 3.1 score

9.9Critical
CVSS 3.1 vector shape for CVE-2026-45372Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CISA-ADPCISA ADP Vulnrichment
other:ssvc

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
yhirosecpp-httplib< 0.44.0Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-444 · source CWE mapping

Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')

Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.

CWE-93 · source CWE mapping

Improper Neutralization of CRLF Sequences ('CRLF Injection')

Improper Neutralization of CRLF Sequences ('CRLF Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.