Bug 2554083 - CVE-2026-92392 curl: curl: HTTP/2 upload Use-After-Free [fedora-all]
Summary: CVE-2026-92392 curl: curl: HTTP/2 upload Use-After-Free [fedora-all]
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: curl
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Jan Macku
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: {"flaws": ["4ec412c8-f3ae-4622-987f-9...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-10-16 12:34 UTC by Rafael Pandini
Modified: 2026-10-16 12:34 UTC (History)
7 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Rafael Pandini 2026-10-16 12:34:26 UTC
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.

During an upload, curl mishandles HTTP/2 `RST_STREAM` received from the server
(with reason `HTTP_1_1_REQUIRED` or `REFUSED_STREAM`) leading to a use after
free of a `struct Curl_easy` object.

INFO
----

This Use-After-Free flaw has been proven to be possible to convert into a
Remote Code Execution if a set of specific criteria are met by the malicious
server:

- the exact curl version object and structure layout used for the transfer is
  known and used to derive attack offsets;
- exact architecture details of the running curl needs to be known
- a known and compatible libc allocator build and heap layout
- nghttp2 and OpenSSL/TLS 1.3 behavior, including allocation effects around
  session tickets
- a pinned CA bundle and other input-dependent allocation geometry
- two parallel transfers and their scheduling/timing need to remain
- correctly calibrated libc leak and symbol offsets; and
- the exploit's current short-command constraint (approximately 23 bytes).

The Common Vulnerabilities and Exposures (CVE) project has assigned the name
CVE-2026-92392 to this issue.

CWE-416: Use After Free

Severity: High

This bug is considered a *C mistake* (likely to have been avoided had we not
been using C).

AFFECTED VERSIONS
-----------------

- Affected versions: curl 8.12.0 to and including 8.22.0
- Not affected versions: curl < 7.12.0 and >= 8.23.0
- Introduced-in: https://github.com/curl/curl/commit/cd9107e0128191b7b5396b

libcurl is used by many applications, but not always advertised as such!

This flaw also affects the curl command line tool.

SOLUTION
--------

- Fixed-in: https://github.com/curl/curl/commit/

RECOMMENDATIONS
---------------

 A - Upgrade curl to version 8.23.0

 B - Apply the patch to your local version

 C - Do not use HTTP/2

TIMELINE
--------

This issue was reported to the curl project on September 15, 2026.

curl 8.23.0 was released on October 14, 2026, coordinated with the publication
of this advisory.

CREDITS
-------

- Reported-by: Luna with Claude, Anthropic
- Patched-by: Stefan Eissing

Thanks a lot!


Note You need to log in before you can comment on or make changes to this bug.