Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessGain adversary-in-the-middle network position
-
DeliveryIntercept client HTTPS request
-
ExploitPresent certificate with mismatched hostname
-
ExecutionWeak verification accepts bogus certificate
-
ImpactDecrypt and tamper with traffic
Vulnerability Assessment
| Exploitation Conditions | Exploitation requires (1) the affected application to perform an outbound HTTPS fetch using libcurl configured with weak hostname verification - consistent with CURLOPT_SSL_VERIFYHOST not being set to the strict value (2) so a certificate whose Common Name/SAN does not match the requested host is accepted; and (2) an active adversary-in-the-middle position on the network path (rogue access point, ARP/DNS spoofing, malicious upstream proxy, or control of a routing hop) to present the mismatched certificate and intercept traffic. Limiting factors: the attack is not exploitable by a purely remote attacker lacking a traffic-interception position, and clients that only ever connect over fully trusted network paths are not realistically exposed. The exact affected product, versions, and whether the weak setting is default or configuration-dependent are not specified in the available data. |
| Impact | No CVSS vector, EPSS score, KEV listing, or POC is provided in the input, so quantitative exploitation signals are entirely absent and cannot be compared. The only hard facts are the vulnerability class (weak libcurl TLS hostname verification during HTTPS fetches, consistent with CWE-297 Improper Validation of Certificate with Host Mismatch) and that it was reported via vendor:ubuntu against a GitHub Security Advisory (GHSA-2vqc-36qp-ccmw). This is a classic transport-security weakness: the real-world risk is conditional rather than universal because successful attack requires an adversary-in-the-middle (AITM) position on the network path between the affected client and the HTTPS endpoint. That positioning requirement typically lowers practical exploitability relative to a raw 'network' vector, so even if a high CVSS were assigned it would likely overstate everyday risk for clients on trusted networks while understating it for clients that routinely traverse hostile networks (public Wi-Fi, untrusted upstreams, cloud egress through untrusted proxies). Because no EPSS or KEV data is present, there is no evidence of active or widespread exploitation - exploitation status is 'no public exploit identified at time of analysis.' The affected product is not explicitly named in the input, which is the single largest gap: without it, the deployment footprint and blast radius cannot be reliably scoped. This should be triaged as a genuine confidentiality/integrity-of-transit defect to patch, not a mass-exploitation emergency. |
| Exploit ScenarioDerived | An attacker who can position themselves on the network path (e.g., rogue Wi-Fi access point, ARP/DNS spoofing, or a compromised upstream proxy) intercepts the affected application's outbound HTTPS request. Because libcurl hostname verification is weak, the attacker presents a certificate whose hostname does not match the intended server, and the client accepts it, letting the attacker decrypt, read, and tamper with the supposedly secure traffic. No public exploit code is identified at time of analysis, but exploitation requires only standard AITM tooling once positioning is achieved. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 02, 2026
Weak TLS hostname verification in libcurl during outbound HTTPS fetches allows an adversary positioned on the network path to impersonate an arbitrary remote server and read or modify the traffic, because a certificate whose Common Name or Subject Alternative Name does not match the requested host is accepted when the application does not set CURLOPT_SSL_VERIFYHOST to its strict value. Affected are applications and utilities that perform HTTPS requests through libcurl with weakened hostname checking, a configuration pattern that is configuration-dependent rather than necessarily a libcurl default; the exact affected products and versions are not specified in the available data, which originates from the Ubuntu vendor report for GHSA-2vqc-36qp-ccmw. No CVSS, EPSS, or CISA KEV data is provided, and no public exploit was identified at time of analysis; the assessed vector (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) reflects high confidentiality and integrity impact but high attack complexity, since the attacker must already hold a traffic-interception position such as a rogue access point, ARP/DNS spoofing, a malicious upstream proxy, or control of a routing hop.
RemediationAI
No vendor-released patch version is identified at time of analysis, so the primary immediate action is configuration hardening rather than an upgrade: audit every code path and configuration that performs HTTPS through libcurl and explicitly set CURLOPT_SSL_VERIFYHOST to 2 alongside CURLOPT_SSL_VERIFYPEER to 1 (for example curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 2L) in C/C++, CURLOPT_SSL_VERIFYHOST via language bindings, or the --ssl-verifyhost equivalent in wrapper tooling), and remove any CURLOPT_SSL_VERIFYHOST value of 0 while treating legacy value 1 as obsolete; the trade-off is that strict verification surfaces certificate problems on misconfigured or self-signed endpoints, which should then be fixed with properly issued certificates or an explicit custom CA bundle (CURLOPT_CAINFO/CURLOPT_CAPATH) rather than by weakening hostname checks. For higher-assurance deployments, certificate or public-key pinning (CURLOPT_PINNEDPUBLICKEY) prevents acceptance of any mismatched certificate presented by an on-path attacker, at the cost of operational overhead when the pin must be rotated at certificate renewal. Because exploitation requires an active adversary-in-the-middle position, network-side compensating controls are meaningful: avoid untrusted Wi-Fi, enforce DNS-over-HTTPS/TLS or trusted resolvers to blunt DNS spoofing, enable Dynamic ARP Inspection or static ARP on sensitive segments, and force traffic through authenticated proxies rather than untrusted upstream proxies. Track the GHSA-2vqc-36qp-ccmw advisory and Ubuntu security notices for an authoritative patched libcurl package, and apply the vendor-updated package as soon as it is published; note that patching libcurl alone may not resolve the issue if the weak setting is introduced by the calling application's own configuration.
Affected ProductsAI
The affected artifact is libcurl (and applications, tools, or language bindings that link against it) when making outbound HTTPS requests with weak hostname verification, i.e. CURLOPT_SSL_VERIFYHOST not set to the strict value of 2; the behavior is described in GitHub Security Advisory GHSA-2vqc-36qp-ccmw and was reported by the Ubuntu vendor source, so Ubuntu libcurl packages and Ubuntu-based products bundling libcurl are the most likely distribution channel implicated. No CPE strings, version ranges, or exact release identifiers are present in the provided data, and the advisory does not state whether the weak setting is a library default or purely a matter of how downstream callers configure the option; consequently, the full set of affected products and versions cannot be determined from this input. Practically, exposure should be assessed across any application or appliance that performs outbound HTTPS fetches via libcurl - package managers, web scrapers, API clients, update agents, and embedded devices - and confirmed by inspecting whether the SSL_VERIFYHOST setting is pinned to strict verification; downstream vendor advisories such as Ubuntu security notices (USN) and the GHSA-2vqc-36qp-ccmw advisory should be monitored for the authoritative affected-version list. No patched release version is identified in the available data.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
libcurl is the widely embedded client-side URL transfer library used by countless applications, language bindings (PHP, Python, Ruby, .NET), package managers, and IoT/embedded agents for outbound HTTPS. Its TLS hostname verification is governed by the CURLOPT_SSL_VERIFYHOST option: value 0 disables hostname checks entirely, value 1 was historically a debug-only mode that libcurl has treated as equivalent to strict checking since 7.28.1, and value 2 (or 1 in older semantics) enforces that the certificate's Common Name or Subject Alternative Name matches the host being contacted. When an application sets or inherits a weaker value, the chain-of-trust check on the peer certificate can still pass against any certificate signed by a trusted CA while the host identity check is skipped, so a mismatched certificate for the targeted hostname is accepted. That is the classic improper certificate validation class of weakness (the CWE is not supplied in the input; the behavior is consistent with certificate host-mismatch validation failures such as CWE-295/CWE-297). The vulnerability is intrinsic to the client configuration, not to TLS itself: a correctly pinned or strictly verified client is unaffected, and exploitation additionally requires the attacker to control or observe the network path in order to inject the forged certificate and intercept the session, which is why the assessed vector carries AC:H. Because the advisory provides no CPE data, no version ranges, and no vendor patch reference, the precise set of shipping products that expose the weak setting - versus applications that set it explicitly - cannot be enumerated from the available intelligence.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AC:H and PR:N because exploitation needs no credentials but does require an adversary-in-the-middle position; C:H/I:H as intercepted TLS traffic can be read and altered; A:N as availability is unaffected.
DescriptionCVE.org
[GHSA-2vqc-36qp-ccmw: Weak libcurl TLS hostname verification setting when fetching over HTTPS]
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
CVE.org
GitHub PoC
Exploit-DB