Use After Free Affecting curl package, versions [8.12.0,8.23.0)


Severity

Recommended
0.0
critical
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.23% (13th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Use After Free vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-UNMANAGED-CURL-20954501
  • published15 Oct 2026
  • disclosed14 Oct 2026
  • creditonn4a_luna

Introduced: 14 Oct 2026

NewCVE-2026-92392  (opens in a new tab)
CWE-416  (opens in a new tab)

How to fix?

Upgrade curl to version 8.23.0 or higher.

Overview

curl is a command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP. libcurl offers a myriad of powerful features.

Affected versions of this package are vulnerable to Use After Free in the multi_done function in lib/multi.c, whose cleanup order ran multi_schedule_pending before the connection was detached and the connection filters had given up their references to the struct Curl_easy. An attacker running the server can free and then reuse that object during an upload by responding with an HTTP/2 RST_STREAM carrying HTTP_1_1_REQUIRED or REFUSED_STREAM. Converting this into code execution requires knowledge of the exact build's structure layout and architecture, a known libc allocator build and heap layout, the allocation geometry contributed by nghttp2, TLS 1.3 session tickets, and a pinned CA bundle, two parallel transfers whose scheduling stays calibrated, a correct libc leak with symbol offsets, and a command of roughly 23 bytes.

CVSS Base Scores

version 4.0
version 3.1