# CVE-2026-54919: yhirose cpp-httplib certificate validation bypass for IP-literal hosts

Source: https://junglewise.ai/threats/cve-2026-54919-yhirose-cpp-httplib-certificate-validation-bypass-for-ip-literal  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-07-10. Updated: 2026-07-10  
License: CC BY 4.0 with a link back

CVE-2026-54919 · Severity: high · CVSS 7.4 · Published 2026-07-10

cpp-httplib is a widely used C++ library for adding web server and client functionality to applications. A security flaw in how the library handles encrypted (HTTPS) connections to specific IP addresses allows attackers to bypass security certificate checks. This could enable a "man-in-the-middle" attack where an unauthorized party intercepts, reads, or modifies sensitive data transmitted between the application and the server.

Vendors: [Yhirose](https://junglewise.ai/threats/vendors/yhirose).

## Quick answers

**Is CVE-2026-54919 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-54919 being exploited in the wild.

**How severe is CVE-2026-54919?** High severity, with a CVSS score of 7.4, published 10 July 2026.

**Which products and versions are affected?** Yhirose Httplib 0.31.0 - 0.46.1.

**Is there a fix for CVE-2026-54919?** A patch was published on 2026-06-10: Version 0.47.0 released Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-54919 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-54919?** Check whether you run Yhirose Httplib at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

A certificate validation bypass exists in cpp-httplib when using Mbed TLS (v0.31.0-0.46.1) or wolfSSL (v0.33.0-0.46.1) backends. When a client connects to an IP-literal host (e.g., https://1.1.1.1/) with certificate verification enabled, the library incorrectly downgrades or skips certificate chain validation. Specifically, SSLClient only performs a post-handshake IP SAN match without verifying the trust chain, and WebSocketClient on Mbed TLS may skip verification entirely. An attacker capable of intercepting network traffic can present a self-signed or untrusted certificate with a matching IP SAN to decrypt or alter communications. This issue is resolved in version 0.47.0 by ensuring chain verification remains active for IP hosts and performing identity checks post-handshake.

## Affected products

- yhirose cpp-httplib 0.31.0 - 0.46.1

## Timeline

- 2026-06-10: patched: Version 0.47.0 released
- 2026-06-16: advisory: GitHub Security Advisory published
- 2026-07-10: disclosed: CVE-2026-54919 published to NVD

## References

- [https://github.com/yhirose/cpp-httplib/commit/fa981cedae004ea9d946f1392b9dec22fac6fee6](https://github.com/yhirose/cpp-httplib/commit/fa981cedae004ea9d946f1392b9dec22fac6fee6)
- [https://github.com/yhirose/cpp-httplib/releases/tag/v0.47.0](https://github.com/yhirose/cpp-httplib/releases/tag/v0.47.0)
- [https://github.com/yhirose/cpp-httplib/security/advisories/GHSA-8ffh-4p95-g3p2](https://github.com/yhirose/cpp-httplib/security/advisories/GHSA-8ffh-4p95-g3p2)
