Bug 2528508 - CVE-2026-85197 libsoup3: libsoup: Heap use-after-free in libsoup HTTP/2 client on_data_read() via GOAWAY during body upload [fedora-all]
Summary: CVE-2026-85197 libsoup3: libsoup: Heap use-after-free in libsoup HTTP/2 clien...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libsoup3
Version: rawhide
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
Assignee: Adrian Vovk
QA Contact:
URL:
Whiteboard: {"flaws": ["dd915ac2-42e6-400f-b632-c...
Depends On:
Blocks: CVE-2026-85197
TreeView+ depends on / blocked
 
Reported: 2026-09-04 14:24 UTC by Vladimir Vasilev
Modified: 2026-11-12 03:14 UTC (History)
4 users (show)

Fixed In Version: libsoup3-3.6.6-11.fc44 libsoup3-3.6.6-6.fc43
Clone Of:
Environment:
Last Closed: 2026-11-03 01:38:07 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
GNOME Gitlab GNOME/libsoup/-/work_items/552 0 None None None 2026-10-27 01:10:11 UTC

Description Vladimir Vasilev 2026-09-04 14:24:28 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.

A heap use-after-free vulnerability exists in libsoup's HTTP/2 client implementation. When a GNOME application sends an HTTP/2 POST request with a file body (using a non-pollable GInputStream such as GFileInputStream), the body data is read asynchronously via g_input_stream_read_async(). If the remote HTTP/2 server sends a GOAWAY frame while this async read is pending, the SoupHTTP2MessageDatastructure is freed through the shutdown path, but the async read callback on_data_read() still fires afterward, accessing the freed heap memory.

This is a remotely-triggerable heap use-after-free — a malicious HTTP/2 server (or MITM attacker) can deterministically trigger it when any GNOME application uploads a file over HTTPS with HTTP/2. Affected applications include GNOME Web (Epiphany), GNOME Software, Flatpak, and any GLib-based application using SoupSession for HTTP/2 file uploads.

Impact type: Heap use-after-free (CWE-416) — the freed 168-byte SoupHTTP2MessageData struct is read after free, and the freed data_source_buffer may also be written to by the still-pending async I/O operation. This constitutes memory corruption with potential for information disclosure or code execution.

Comment 1 Adrian Vovk 2026-10-27 01:10:12 UTC
Fix appears to be already in 3.7.1+, so rawhide and f45 don't need to do anyhting

For f44 and f43 need to backport to 3.6.x:

- https://gitlab.gnome.org/GNOME/libsoup/-/commit/ebf2d8ad8d2507787c286883a02874f0539c0206
- (ideally) https://gitlab.gnome.org/GNOME/libsoup/-/commit/a439ac2e0cc2f11a99fbfc7fa6b0079923509c94

Comment 2 Adrian Vovk 2026-10-27 03:08:50 UTC
Actually, ebf2d8 appears to be best followed-up by https://gitlab.gnome.org/GNOME/libsoup/-/commit/3bf4a56c2d7e516dd8809f8a4f7a24b22c5b07ba (it fixes a regression in the first commit). The LLM claims a438ac may be a no-op in 3.6.x, and it was optional anyway (according to the upstream report, ebf2d8 is the preferred fix!), so dropped!

Comment 3 Fedora Update System 2026-10-27 05:12:56 UTC
FEDORA-2026-6c3a4775a6 (libsoup3-3.6.6-6.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2026-6c3a4775a6

Comment 4 Fedora Update System 2026-10-27 05:13:27 UTC
FEDORA-2026-f06a7887af (libsoup3-3.6.6-11.fc44) has been submitted as an update to Fedora 44.
https://bodhi.fedoraproject.org/updates/FEDORA-2026-f06a7887af

Comment 5 Fedora Update System 2026-10-28 03:18:01 UTC
FEDORA-2026-6c3a4775a6 has been pushed to the Fedora 43 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2026-6c3a4775a6`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2026-6c3a4775a6

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2026-10-28 04:01:08 UTC
FEDORA-2026-f06a7887af has been pushed to the Fedora 44 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2026-f06a7887af`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2026-f06a7887af

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 7 Fedora Update System 2026-11-03 01:38:07 UTC
FEDORA-2026-f06a7887af (libsoup3-3.6.6-11.fc44) has been pushed to the Fedora 44 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 8 Fedora Update System 2026-11-12 03:14:46 UTC
FEDORA-2026-6c3a4775a6 (libsoup3-3.6.6-6.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.


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