Vulnerability · Published Dec 11, 2024 · Assigned by GitHub_M
CVE-2024-47540GHSL-2024-197: GStreamer uses uninitialized stack memory in Matroska/WebM demuxer
High 8.6
In plain English
A high-severity security flaw in gstreamer from gstreamer. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 1.0% (higher than 63% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
GStreamer is a library for constructing graphs of media-handling components. An uninitialized stack variable vulnerability has been identified in the gst_matroska_demux_add_wvpk_header function within matroska-demux.c. When size < 4, the program calls gst_buffer_unmap with an uninitialized map variable. Then, in the gst_memory_unmap function, the program will attempt to unmap the buffer using the uninitialized map variable, causing a function pointer hijack, as it will jump to mem->allocator->mem_unmap_full or mem->allocator->mem_unmap. This vulnerability could allow an attacker to hijack the execution flow, potentially leading to code execution. This vulnerability is fixed in 1.24.10.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:8 | gstreamer1-plugins-good | 1.16.1-5.el8_10 | ALSA-2024:11299 |
| AlmaLinux:9 | gstreamer1-plugins-good | 1.22.1-3.el9_5 | ALSA-2024:11122 |
| AlmaLinux:8 | gstreamer1-plugins-good-gtk | 1.16.1-5.el8_10 | ALSA-2024:11299 |
| AlmaLinux:9 | gstreamer1-plugins-good-gtk | 1.22.1-3.el9_5 | ALSA-2024:11122 |
| Alpine:v3.20 | gst-plugins-good | 1.24.10-r0 | ALPINE-CVE-2024-47540 |
| Alpine:v3.21 | gst-plugins-good | 1.24.10-r0 | ALPINE-CVE-2024-47540 |
| Alpine:v3.22 | gst-plugins-good | 1.24.10-r0 | ALPINE-CVE-2024-47540 |
| Alpine:v3.23 | gst-plugins-good | 1.24.10-r0 | ALPINE-CVE-2024-47540 |
| Alpine:v3.24 | gst-plugins-good | 1.24.10-r0 | ALPINE-CVE-2024-47540 |
| Debian:12 | gst-plugins-good1.0 | 1.22.0-5+deb12u2 | DSA-5838-1 |
| Debian:12 | gst-plugins-good1.0 | 1.22.0-5+deb12u2 | DEBIAN-CVE-2024-47540 |
| Debian:13 | gst-plugins-good1.0 | 1.24.10-1 | DEBIAN-CVE-2024-47540 |
| Debian:14 | gst-plugins-good1.0 | 1.24.10-1 | DEBIAN-CVE-2024-47540 |
| Rocky Linux:8 | gstreamer1-plugins-good | 0:1.16.1-5.el8_10 | RLSA-2024:11299 |
| Rocky Linux:9 | gstreamer1-plugins-good | 0:1.22.1-3.el9_5 | RLSA-2024:11122 |
| Ubuntu:22.04:LTS | gst-plugins-good1.0 | 1.20.3-0ubuntu1.3 | USN-7176-1 |
| Ubuntu:22.04:LTS | gst-plugins-good1.0 | 1.20.3-0ubuntu1.3 | UBUNTU-CVE-2024-47540 |
| Ubuntu:24.04:LTS | gst-plugins-good1.0 | 1.24.2-1ubuntu1.1 | UBUNTU-CVE-2024-47540 |
| Ubuntu:24.04:LTS | gst-plugins-good1.0 | 1.24.2-1ubuntu1.1 | USN-7176-1 |
Affected products (as reported)
Weakness: CWE-457 · Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
References
- https://securitylab.github.com/advisories/GHSL-2024-197_GStreamer/ x_refsource_CONFIRM
- https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8057.patch x_refsource_MISC
- https://gstreamer.freedesktop.org/security/sa-2024-0017.html x_refsource_MISC
- https://lists.debian.org/debian-lts-announce/2025/02/msg00035.html