Vulnerability · Published Dec 11, 2024 · Assigned by GitHub_M
CVE-2024-47600GHSL-2024-248: GStreamer has an OOB-read in format_channel_mask
Medium 5.1
In plain English
A medium-severity out-of-bounds read 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.1% (higher than 67% 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 OOB-read vulnerability has been detected in the format_channel_mask function in gst-discoverer.c. The vulnerability affects the local array position, which is defined with a fixed size of 64 elements. However, the function gst_discoverer_audio_info_get_channels may return a guint channels value greater than 64. This causes the for loop to attempt access beyond the bounds of the position array, resulting in an OOB-read when an index greater than 63 is used. This vulnerability can result in reading unintended bytes from the stack. Additionally, the dereference of value->value_nick after the OOB-read can lead to further memory corruption or undefined behavior. This vulnerability is fixed in 1.24.10.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:9 | gstreamer1-plugins-base | 1.22.12-4.el9 | ALSA-2025:7243 |
| AlmaLinux:9 | gstreamer1-plugins-base-devel | 1.22.12-4.el9 | ALSA-2025:7243 |
| AlmaLinux:9 | gstreamer1-plugins-base-tools | 1.22.12-4.el9 | ALSA-2025:7243 |
| Alpine:v3.20 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47600 |
| Alpine:v3.21 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47600 |
| Alpine:v3.22 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47600 |
| Alpine:v3.23 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47600 |
| Alpine:v3.24 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47600 |
| Debian:12 | gst-plugins-base1.0 | 1.22.0-3+deb12u3 | DSA-5831-1 |
| Debian:12 | gst-plugins-base1.0 | 1.22.0-3+deb12u3 | DEBIAN-CVE-2024-47600 |
| Debian:13 | gst-plugins-base1.0 | 1.24.10-1 | DEBIAN-CVE-2024-47600 |
| Debian:14 | gst-plugins-base1.0 | 1.24.10-1 | DEBIAN-CVE-2024-47600 |
| Rocky Linux:9 | gstreamer1-plugins-base | 0:1.22.12-4.el9 | RLSA-2025:7243 |
| Ubuntu:22.04:LTS | gst-plugins-base1.0 | 1.20.1-1ubuntu0.4 | USN-7175-1 |
| Ubuntu:22.04:LTS | gst-plugins-base1.0 | 1.20.1-1ubuntu0.4 | UBUNTU-CVE-2024-47600 |
| Ubuntu:24.04:LTS | gst-plugins-base1.0 | 1.24.2-1ubuntu0.2 | UBUNTU-CVE-2024-47600 |
| Ubuntu:24.04:LTS | gst-plugins-base1.0 | 1.24.2-1ubuntu0.2 | USN-7175-1 |
Affected products (as reported)
Weakness: CWE-125 · Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
References
- https://securitylab.github.com/advisories/GHSL-2024-248_Gstreamer/ x_refsource_CONFIRM
- https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8034.patch x_refsource_MISC
- https://gstreamer.freedesktop.org/security/sa-2024-0018.html x_refsource_MISC
- https://lists.debian.org/debian-lts-announce/2024/12/msg00021.html