Skip to main content

libcurl CVE-2026-82208

| EUVDEUVD-2026-72152 HIGH
Improper Certificate Validation (CWE-295)
7.5
CVSS 3.1 · Vendor
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify target using wolfSSL curl with CA caching and CURLOPT_SSL_CTX_FUNCTION
  2. Delivery
    Obtain certificate signed by CA in cached system bundle, excluded from callback store
  3. Exploit
    Achieve MITM position on target network path
  4. Execution
    Initiate TLS handshake presenting that certificate
  5. Persist
    libcurl reinstates cached CA store post-callback, accepts certificate
  6. Impact
    Decrypt and intercept plaintext application data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V12 - Secure Communication Certificate validation
Exploitation Conditions

Three conditions must hold simultaneously: (1) curl/libcurl must be compiled and running with the wolfSSL TLS backend - not the default on most Linux distributions or macOS, which ship OpenSSL or GnuTLS builds; (2) CA caching must be enabled within the wolfSSL integration layer; (3) the application must register a CURLOPT_SSL_CTX_FUNCTION callback and use it to replace the SSL context's trust store with a custom bundle. Beyond these software conditions, the attacker must achieve a network MITM position - via on-path interception, DNS poisoning, BGP hijack, or similar - and must possess a certificate signed by a CA present in the cached system bundle that the callback's custom store explicitly excludes. Deployments using any non-wolfSSL backend, deployments with CA caching disabled, and applications that do not register CURLOPT_SSL_CTX_FUNCTION are not exploitable regardless of network position.

Impact

The vendor-assigned CVSS 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N) overstates attacker convenience: AV:N and AC:L imply broad unauthenticated network exploitability, but exploitation actually requires three non-default concurrent conditions - wolfSSL as the TLS backend, CA caching enabled, and active use of CURLOPT_SSL_CTX_FUNCTION - none of which represent a default curl deployment. Additionally, the attacker must occupy a MITM position on the network path, further raising effective attack complexity well above AC:L. Even a mid-sized municipal IT team in opole running standard curl packages built against OpenSSL is entirely unaffected, illustrating how narrowly the real exposure falls. EPSS at 0.13% (3rd percentile) correctly signals that exploitation has not been observed at scale and is unlikely against opportunistic targeting. The vulnerability is absent from CISA KEV and no POC code has been identified. Real-world impact is primarily limited to specialized deployments - embedded systems, IoT platforms, or security-sensitive enterprise clients - that explicitly combine wolfSSL with custom callback-driven trust policy enforcement, where an attacker with MITM capability holds a certificate trusted by the cached system bundle but excluded from the application's custom PKI.

Exploit ScenarioDerived

An attacker with a MITM position between a libcurl client (wolfSSL backend, CA caching on, CURLOPT_SSL_CTX_FUNCTION registered) and a remote server presents a TLS certificate signed by a CA present in the cached system bundle but deliberately excluded from the application's callback-installed custom trust store. Because libcurl reinstates the cached store after the callback returns, the certificate passes validation that the application explicitly intended to block, allowing the attacker to terminate and relay the TLS session while reading plaintext traffic. No public POC code has been identified at time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – Sep 08, 2026

Certificate validation bypass in libcurl (curl 8.9.1 through 8.21.0) with the wolfSSL TLS backend allows a network-positioned attacker to intercept encrypted communications by exploiting a post-callback CA store reinstatement bug. When an application uses CURLOPT_SSL_CTX_FUNCTION to install a custom trust store at connection time, libcurl silently overwrites that callback-selected store with the previously cached CA bundle, causing certificates that the callback explicitly rejected to be accepted without error. EPSS is 0.13% (3rd percentile) and no active exploitation is confirmed, but exploitation against a susceptible deployment is conceptually straightforward for a MITM-positioned adversary with a suitable certificate.

Earlier versions of this analysis (1)
v1 Sep 02, 2026 - 12:18

TLS certificate verification bypass in curl's wolfSSL backend allows custom verification callbacks to be silently skipped when a CA certificate is found in wolfSSL's cache, enabling connections that application-level policy logic would otherwise have rejected. Affected are curl releases using the wolfSSL TLS backend, fixed in curl 8.22.0 released September 2, 2026. No public exploit code or active exploitation has been identified at time of analysis.

RemediationAI

Upgrade curl/libcurl to the patched release documented at https://curl.se/docs/vuln-8.21.0.html; the curl project's security advisory at https://curl.se/docs/CVE-2026-82208.html provides authoritative fix guidance. If immediate upgrade is not feasible, three compensating controls can reduce exposure: (1) Rebuild curl against a non-wolfSSL TLS backend such as OpenSSL or GnuTLS, which eliminates the vulnerable code path entirely and carries no functional trade-off for most deployments; (2) Disable CA caching in the wolfSSL integration layer, which prevents the stale bundle from persisting between connections at the cost of per-connection CA reload overhead; (3) Restructure or remove the CURLOPT_SSL_CTX_FUNCTION callback dependency, as applications that do not use this callback are not exploitable regardless of backend or cache configuration. Options (2) and (3) may have throughput implications in high-connection-rate scenarios.

Affected VersionsENISA

curl 8.15.0 ≤8.15.0
curl 8.21.0 ≤8.21.0
curl 8.18.0 ≤8.18.0
curl 8.17.0 ≤8.17.0
curl 8.11.0 ≤8.11.0
curl 8.14.1 ≤8.14.1
curl 8.10.1 ≤8.10.1
curl 8.10.0 ≤8.10.0
curl 8.13.0 ≤8.13.0
curl 8.12.1 ≤8.12.1
curl 8.19.0 ≤8.19.0
curl 8.11.1 ≤8.11.1
curl 8.16.0 ≤8.16.0
curl 8.12.0 ≤8.12.0
curl 8.14.0 ≤8.14.0
curl 8.20.0 ≤8.20.0
curl 8.9.1 ≤8.9.1

Affected Packages

euvd curl no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

libcurl supports multiple TLS backends (OpenSSL, GnuTLS, wolfSSL, and others); this vulnerability is specific to the wolfSSL backend. CWE-295 (Improper Certificate Validation) applies because the root cause is a lifecycle management flaw in the CA trust store: when CA caching is enabled, wolfSSL's integration layer retains a reference to the system trust bundle between connections for performance. The CURLOPT_SSL_CTX_FUNCTION callback is a libcurl mechanism allowing applications to programmatically modify the SSL context before each connection is established - including replacing the CA trust bundle - enabling certificate pinning, custom PKI enforcement, or per-request trust policy. The bug causes libcurl to reinstate the globally cached CA bundle after the callback has returned, silently undoing the application's trust store substitution. Affected versions span curl 8.9.1 through 8.21.0 as enumerated in EUVD-2026-72152.

Know when Curl gets its next vulnerability

  • 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

Vendor (CNA) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 7.4 HIGH

MITM network position plus three simultaneous non-default configuration prerequisites raise AC to H; MITM capability enables both read and inject, so I:H applies.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
SUSE 3.1 MEDIUM
AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:N/A:N
Red Hat 4.8 MEDIUM

Primary rating from Vendor (CNA).

CVSS VectorVendor

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

3
Analysis Updated
Sep 08, 2026 - 19:37 vuln.today
v2 - CVSS changed
CVSS changed
Sep 08, 2026 - 19:23 NVD
7.5 (HIGH)
CVE Published
Sep 02, 2026 - 10:57 oss-security
CRITICAL

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Executive ViewAI

Why It Matters

libcurl versions 8.9.1 through 8.21.0 using the wolfSSL TLS backend contain a certificate validation bypass allowing network-positioned attackers to intercept encrypted communications in applications with custom certificate trust store configurations. Organizations running affected versions with this specific configuration face elevated TLS interception risk, though the vulnerability applies only to non-standard CA callback implementations.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Recompile libcurl using OpenSSL backend instead of wolfSSL; (2) Eliminate CURLOPT_SSL_CTX_FUNCTION custom CA callbacks where possible and use system CA store validation; (3) Deploy network-level certificate pinning or mutual TLS (mTLS) for communications from affected curl instances; (4) Implement network segmentation to reduce MITM attack surface for vulnerable applications.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
High
curl/libcurl deployed across virtually all OS and platform ecosystems
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
Medium

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Curl

View all
CVE-2021-22901 HIGH POC
8.1 Jun 11

curl 7.75.0 through 7.76.1 suffers from a use-after-free vulnerability resulting in already freed memory being used when

CVE-2013-0249 HIGH POC
7.5 Mar 08

Stack-based buffer overflow in the Curl_sasl_create_digest_md5_message function in lib/curl_sasl.c in curl and libcurl 7

CVE-2015-3145 HIGH
7.5 Apr 24

The sanitize_cookie_path function in cURL and libcurl 7.31.0 through 7.41.0 does not properly calculate an index, which

CVE-2022-32206 MEDIUM POC
6.5 Jul 07

curl < 7.84.0 supports "chained" HTTP compression algorithms, meaning that a serverresponse can be compressed multiple t

CVE-2022-32207 CRITICAL POC
9.8 Jul 07

When curl < 7.84.0 saves cookies, alt-svc and hsts data to local files, it makes the operation atomic by finalizing the

CVE-2022-43551 HIGH POC
7.5 Dec 23

A vulnerability exists in curl <7.87.0 HSTS check that could be bypassed to trick it to keep using HTTP. Rated high seve

CVE-2022-32221 CRITICAL POC
9.8 Dec 05

When doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to ask for data t

CVE-2018-0500 CRITICAL POC
9.8 Jul 11

Curl_smtp_escape_eob in lib/smtp.c in curl 7.54.1 to and including curl 7.60.0 has a heap-based buffer overflow that mig

CVE-2022-32205 MEDIUM POC
4.3 Jul 07

A malicious server can serve excessive amounts of `Set-Cookie:` headers in a HTTP response to curl and curl < 7.84.0 sto

CVE-2025-9086 HIGH POC
7.5 Sep 12

1. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no authentication required, low attack co

CVE-2023-23914 CRITICAL POC
9.1 Feb 23

A cleartext transmission of sensitive information vulnerability exists in curl <v7.88.0 that could cause HSTS functional

CVE-2023-27534 HIGH POC
8.8 Mar 30

A path traversal vulnerability exists in curl <8.0.0 SFTP implementation causes the tilde (~) character to be wrongly re

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SLES15-SP5-CHOST-BYOS-SAP-CCloud Not-Affected
SLES15-SP6-CHOST-BYOS Not-Affected
SLES15-SP6-CHOST-BYOS-Aliyun Not-Affected
SLES15-SP6-CHOST-BYOS-Azure Not-Affected
SLES15-SP6-CHOST-BYOS-EC2 Not-Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy