CVE-2024-47538
Summary
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.
Impact & exploitability
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Affected products we track (1)
Recommendation
Apply the vendor fix promptly. Open any affected product above for its exact safe version.
Official patch: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8035.patch ↗
Additional information
- NVD record
- https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8035.patchPatch
- https://gstreamer.freedesktop.org/security/sa-2024-0022.html
- https://securitylab.github.com/advisories/GHSL-2024-115_GHSL-2024-118_Gstreamer/Advisory
- https://lists.debian.org/debian-lts-announce/2024/12/msg00021.html