Bug 2130959 (CVE-2022-1923)

Summary: CVE-2022-1923 gstreamer-plugins-good: Potential heap overwrite in mkv demuxing using bz2 decompression
Product: [Other] Security Response Reporter: Guilherme de Almeida Suckevicz <gsuckevi>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: bdpepple, elima, fabiano, marcandre.lureau, negativo17, rh-spice-bugs, uraeus, victortoso, wtaymans
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: gstreamer-plugins-good 1.20.3 Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in GStreamer. An integer overflow can lead to a heap-based buffer overflow in the mkv demuxer when processing a specially crafted Matroska/WebM file using bzip decompression. This vulnerability can result in application crash, memory corruption, and code execution.
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-09 16:51:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 2130960, 2130961, 2131047, 2131048, 2131049, 2131050, 2131051    
Bug Blocks: 2111231    

Description Guilherme de Almeida Suckevicz 2022-09-29 14:32:30 UTC
DOS / potential heap overwrite in mkv demuxing using bzip decompression. Integer overflow in matroskademux element in bzip decompression function which causes a segfault, or could cause a heap overwrite, depending on libc and OS. Depending on the libc used, and the underlying OS capabilities, it could be just a segfault or a heap overwrite. If the libc uses mmap for large chunks, and the OS supports mmap, then it is just a segfault (because the realloc before the integer overflow will use mremap to reduce the size of the chunk, and it will start to write to unmapped memory). However, if using a libc implementation that does not use mmap, or if the OS does not support mmap while using libc, then this could result in a heap overwrite.

References:
https://gstreamer.freedesktop.org/security/sa-2022-0002.html
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1225

Comment 1 Guilherme de Almeida Suckevicz 2022-09-29 14:32:53 UTC
Created gstreamer1-plugins-good tracking bugs for this issue:

Affects: fedora-all [bug 2130960]


Created mingw-gstreamer1-plugins-good tracking bugs for this issue:

Affects: fedora-all [bug 2130961]

Comment 3 errata-xmlrpc 2023-05-09 07:23:31 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 9

Via RHSA-2023:2260 https://access.redhat.com/errata/RHSA-2023:2260

Comment 4 Product Security DevOps Team 2023-05-09 16:51:34 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2022-1923