CVE-2026-9080: libcurl Use-After-Free in Socket Callback (CVSS 7.3)
A use-after-free bug in libcurl allows attackers to crash applications or potentially execute code when specific callback functions are invoked during multi-socket operations. The vulnerability is triggered when `curl_easy_pause()` is called from within libcurl's event-based socket callback handler, causing the library to write to memory that has already been freed. This is a memory safety issue that affects applications using libcurl's multi interface with socket callbacks.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 7.3 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
- Weaknesses (CWE)
- CWE-416
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-07-03 / 2026-07-07
NVD description (verbatim)
Calling `curl_easy_pause()` within the event-based `CURLMOPT_SOCKETFUNCTION` callback triggers a use-after-free vulnerability, where libcurl attempts to store a flag using a dangling struct pointer immediately after that pointer's memory has been freed.
4 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-9080 is a use-after-free vulnerability (CWE-416) in libcurl's multi interface. The flaw occurs when `curl_easy_pause()` is invoked from the `CURLMOPT_SOCKETFUNCTION` callback. The pause operation frees a connection structure, but the callback handler continues to reference and write flags to that freed memory location through a now-dangling pointer. This sequence creates a classic use-after-free condition where memory safety is violated, potentially enabling denial of service or information disclosure depending on heap state and attacker control.
Business impact
Organizations deploying applications built with vulnerable libcurl versions face potential service disruptions through crash-based denial of service attacks. If an attacker can trigger the specific callback sequence remotely—for instance, through crafted network responses to applications using libcurl for data transfer—availability could be compromised. The vulnerability does not require authentication and can be exploited over the network, making it a concern for internet-facing services. Confidentiality and integrity impacts are also rated in the CVSS score, though exploitation complexity depends on heap state and application context.
Affected systems
The vulnerability affects curl/libcurl on all platforms where the library is compiled and used, particularly in applications that implement the multi interface with custom socket callbacks. This includes web browsers, command-line tools, embedded systems, IoT devices, and any application linking against vulnerable libcurl versions. The vulnerability is not limited to a specific OS or architecture. Server-side applications performing HTTP/HTTPS operations with event-driven networking are at higher risk if they use the multi interface's socket callback features.
Exploitability
The vulnerability has a CVSS score of 7.3 (HIGH) with a network attack vector, low attack complexity, and no privileges or user interaction required. However, practical exploitation requires that an application specifically uses the multi interface and invokes `curl_easy_pause()` from within the socket callback—a less common usage pattern. An attacker would need to trigger network conditions that cause the application to call pause during an active socket event. While the technical bar is not extremely high, the requirement for a specific callback pattern limits the real-world attack surface compared to more general libcurl flaws.
Remediation
Apply the latest patched version of libcurl released after July 3, 2026. Verify the specific version number in the official curl advisory and release notes. Organizations should prioritize patching in internet-facing services and systems processing untrusted network data. If immediate patching is not feasible, mitigations include disabling the multi interface where possible, avoiding socket callbacks, or restricting network access to trusted sources.
Patch guidance
Update libcurl to the version released by the curl project that addresses CVE-2026-9080. Consult the official curl security advisory and release notes for exact version numbers and supported branches. Test patches in a staging environment before production deployment, as libcurl updates may affect application behavior. Verify that dependent applications (browsers, package managers, language bindings) also pull in the patched libcurl version.
Detection guidance
Monitor applications for crashes or hangs during network operations, particularly those using libcurl's multi interface. Observe error logs for segmentation faults or memory-related exceptions occurring in libcurl code paths involving socket callbacks. Network-based detection is challenging without application instrumentation. Maintain an inventory of applications and dependencies using libcurl and their versions. Use software composition analysis (SCA) tools to identify libcurl instances in your environment and flag those below the patched version threshold.
Why prioritize this
This vulnerability merits prompt but measured attention. The CVSS score of 7.3 (HIGH) and network attack vector classify it as a significant risk. However, exploitation requires a specific application pattern (multi interface with pause in socket callback), reducing the practical scope. Prioritize patching for internet-facing services and applications handling untrusted remote data. Internal or isolated systems using libcurl in standard configurations may be lower priority but should still be updated in normal maintenance windows.
Risk score, explained
The CVSS 3.1 score of 7.3 reflects a remotely exploitable use-after-free with potential for confidentiality, integrity, and availability impact. The network attack vector (AV:N) and low attack complexity (AC:L) with no privilege or user interaction requirements (PR:N, UI:N) drive the elevated score. The unchanged scope (S:U) and partial impacts across all three categories (C:L, I:L, A:L) place it firmly in the HIGH severity band. The score appropriately balances the ease of remote triggering against the specific callback pattern needed for exploitation.
Frequently asked questions
Could this vulnerability allow remote code execution?
The CVSS ratings include integrity impact, which could theoretically encompass code execution via heap corruption. However, successful RCE would require precise heap grooming and attacker control over freed memory layout—complex but not impossible in targeted scenarios. Most realistic attacks will result in denial of service (crash) rather than reliable code execution.
Do all curl users need to patch immediately?
Priority depends on how libcurl is used. Applications employing the multi interface with socket callbacks should patch urgently. Command-line curl usage and simple single-request transfers are lower risk. Review your application's libcurl integration and prioritize accordingly.
What if I cannot patch right away?
Consider deploying network-level controls to restrict connections to trusted endpoints, monitor application logs for crashes, and plan a patching schedule with appropriate testing. Disabling the multi interface or socket callbacks if architecturally feasible provides temporary mitigation.
Does this affect static linking of libcurl?
Yes. Statically linked libcurl is equally vulnerable if the version included is prior to the patch. Applications must be recompiled with patched libcurl source code and redeployed.
This analysis is based on the CVE record and vendor information available as of the publication date. Actual patch versions, KEV status, and exploit availability may evolve; consult the official curl project advisory and security bulletins for the most current guidance. This document does not constitute professional security advice; organizations should conduct their own risk assessment based on their unique environment and threat model. Source: NVD (public-domain), retrieved 2026-08-11. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2025-60464HIGHGPAC MP4Box Use-After-Free DoS Vulnerability
- CVE-2025-60467HIGHGPAC MP4Box Use-After-Free DoS Vulnerability
- CVE-2026-0125HIGHAndroid VPU Race Condition Local Privilege Escalation
- CVE-2026-0137HIGHAndroid Edge TPU Use-After-Free Privilege Escalation
- CVE-2026-0143HIGHAndroid LWIS Use-After-Free Privilege Escalation (CVSS 7.8 HIGH)
- CVE-2026-10000HIGHChrome Sandbox Escape via Use-After-Free in Password Handling
- CVE-2026-10001HIGHChrome Sandbox Escape via PerformanceManager Use-After-Free
- CVE-2026-10002HIGHGoogle Chrome PDFium Use-After-Free Vulnerability (CVSS 8.8)