Description
cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. In affected Mbed TLS backend versions from 0.31.0 through 0.46.1 and wolfSSL backend versions from 0.33.0 through 0.46.1, when cpp-httplib is built with CPPHTTPLIB_MBEDTLS_SUPPORT or CPPHTTPLIB_WOLFSSL_SUPPORT and a client connects to an IP-literal host with server certificate verification enabled, SSLClient and Client in HTTPS mode skip certificate chain validation and WebSocketClient on the Mbed TLS backend skips verification altogether, allowing a man-in-the-middle attacker positioned to intercept traffic to present a crafted certificate and read or modify the traffic. This issue is fixed in version 0.47.0.
Published: 2026-07-10
Score: 7.4 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability causes the cpp‑httplib library to skip certificate chain validation when connecting to an IP literal host. An attacker positioned between the client and server can supply a forged certificate and read or modify HTTPS traffic, thereby compromising confidentiality and integrity. The weakness is an improper handling of TLS certificate verification for IP addresses and is classified as CWE‑295.

Affected Systems

Affected versions include yhirose:cpp-httplib with the Mbed TLS backend from versions 0.31.0 through 0.46.1 and the wolfSSL backend from versions 0.33.0 through 0.46.1. All releases newer than 0.47.0 contain the fix.

Risk and Exploitability

The CVSS score of 7.4 marks the flaw as high severity. The EPSS score of less than 1% indicates a very low but non‑zero probability of exploitation, and the vulnerability is not listed in CISA KEV. Exploitation requires an active man‑in‑the‑middle attack between the client and server and the use of an IP‑literal host; the bypass applies only to HTTPS connections that use a direct IP address, which limits its exposure. Systems still running affected library versions remain vulnerable until the recommended update is applied.

Generated by OpenCVE AI on July 29, 2026 at 10:38 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update cpp‑httplib to version 0.47.0 or later, which restores proper TLS certificate chain validation.
  • Verify that your application builds the library with CPPHTTPLIB_MBEDTLS_SUPPORT or CPPHTTPLIB_WOLFSSL_SUPPORT and that server certificate verification is enabled in the HTTPS client configuration.
  • Based on the vulnerability description, limit use of IP‑literal hostnames in HTTPS connections and, if possible, replace them with domain names until the library is updated.

Generated by OpenCVE AI on July 29, 2026 at 10:38 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 10 Jul 2026 17:45:00 +0000

Type Values Removed Values Added
First Time appeared Yhirose
Yhirose cpp-httplib
Vendors & Products Yhirose
Yhirose cpp-httplib

Fri, 10 Jul 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Fri, 10 Jul 2026 16:30:00 +0000

Type Values Removed Values Added
Description cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. In affected Mbed TLS backend versions from 0.31.0 through 0.46.1 and wolfSSL backend versions from 0.33.0 through 0.46.1, when cpp-httplib is built with CPPHTTPLIB_MBEDTLS_SUPPORT or CPPHTTPLIB_WOLFSSL_SUPPORT and a client connects to an IP-literal host with server certificate verification enabled, SSLClient and Client in HTTPS mode skip certificate chain validation and WebSocketClient on the Mbed TLS backend skips verification altogether, allowing a man-in-the-middle attacker positioned to intercept traffic to present a crafted certificate and read or modify the traffic. This issue is fixed in version 0.47.0.
Title cpp-httplib: TLS certificate chain verification bypassed for IP-literal hosts on Mbed TLS and wolfSSL backends
Weaknesses CWE-295
References
Metrics cvssV3_1

{'score': 7.4, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N'}


Subscriptions

Yhirose Cpp-httplib
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-14T03:55:43.419Z

Reserved: 2026-06-16T13:49:33.557Z

Link: CVE-2026-54919

cve-icon Vulnrichment

Updated: 2026-07-10T16:52:27.151Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-29T10:45:03Z

Weaknesses
  • CWE-295

    Improper Certificate Validation