Vulnerability · Published Dec 11, 2024 · Assigned by GitHub_M
CVE-2024-47538GHSL-2024-115: GStreamer has a stack-buffer overflow in vorbis_handle_identification_packet
High 8.6
In plain English
A high-severity stack buffer overflow 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.3% (higher than 70% 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. A stack-buffer overflow has been detected in the `vorbis_handle_identification_packet` function within `gstvorbisdec.c`. The position array is a stack-allocated buffer of size 64. If vd->vi.channels exceeds 64, the for loop will write beyond the boundaries of the position array. The value written will always be `GST_AUDIO_CHANNEL_POSITION_NONE`. This vulnerability allows someone to overwrite the EIP address allocated in the stack. Additionally, this bug can overwrite the `GstAudioInfo` info structure. This vulnerability is fixed in 1.24.10.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:8 | gstreamer1-plugins-base | 1.16.1-5.el8_10 | ALSA-2024:11345 |
| AlmaLinux:9 | gstreamer1-plugins-base | 1.22.1-3.el9_5 | ALSA-2024:11123 |
| AlmaLinux:8 | gstreamer1-plugins-base-devel | 1.16.1-5.el8_10 | ALSA-2024:11345 |
| AlmaLinux:9 | gstreamer1-plugins-base-devel | 1.22.1-3.el9_5 | ALSA-2024:11123 |
| AlmaLinux:9 | gstreamer1-plugins-base-tools | 1.22.1-3.el9_5 | ALSA-2024:11123 |
| Alpine:v3.20 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47538 |
| Alpine:v3.21 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47538 |
| Alpine:v3.22 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47538 |
| Alpine:v3.23 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47538 |
| Alpine:v3.24 | gst-plugins-base | 1.24.10-r0 | ALPINE-CVE-2024-47538 |
| 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-47538 |
| Debian:13 | gst-plugins-base1.0 | 1.24.10-1 | DEBIAN-CVE-2024-47538 |
| Debian:14 | gst-plugins-base1.0 | 1.24.10-1 | DEBIAN-CVE-2024-47538 |
| Rocky Linux:8 | gstreamer1-plugins-base | 0:1.16.1-5.el8_10 | RLSA-2024:11345 |
| 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-47538 |
| Ubuntu:24.04:LTS | gst-plugins-base1.0 | 1.24.2-1ubuntu0.2 | UBUNTU-CVE-2024-47538 |
| Ubuntu:24.04:LTS | gst-plugins-base1.0 | 1.24.2-1ubuntu0.2 | USN-7175-1 |
Affected products (as reported)
Weakness: CWE-121 · 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-115_GHSL-2024-118_Gstreamer/ x_refsource_CONFIRM
- https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8035.patch x_refsource_MISC
- https://gstreamer.freedesktop.org/security/sa-2024-0022.html x_refsource_MISC
- https://lists.debian.org/debian-lts-announce/2024/12/msg00021.html