First published: Wed Dec 11 2024(Updated: )
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.
Credit: security-advisories@github.com security-advisories@github.com
Affected Software | Affected Version | How to fix |
---|---|---|
debian/gst-plugins-base1.0 | <=1.18.4-2+deb11u2<=1.22.0-3+deb12u2 | 1.18.4-2+deb11u3 1.22.0-3+deb12u3 1.24.10-1 |
GStreamer | <1.24.10 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2024-47538 has been classified as a critical vulnerability due to the potential for stack-buffer overflow.
To fix CVE-2024-47538, update the GStreamer library to version 1.24.10 or later, or to the specified patched versions in the affected software.
CVE-2024-47538 affects GStreamer versions prior to 1.24.10 and specific versions of the gst-plugins-base1.0 package.
A stack-buffer overflow in CVE-2024-47538 occurs when the size of the position array exceeds its allocated stack size, posing a risk of code execution.
You can determine if your system is vulnerable to CVE-2024-47538 by checking the installed version of GStreamer and comparing it to the affected versions.