GHSL-2024-166: GStreamer Integer overflows in MP4/MOV demuxer and memory allocator that can lead to out-of-bounds writes
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| gstreamer | gstreamer | affected |
|
Configuration 1 [-]
|
Configuration 2 [-]
|
| Package | CPE | Advisory | Released Date |
|---|---|---|---|
| Red Hat Enterprise Linux 7 Extended Lifecycle Support | |||
| gstreamer1-plugins-base-0:1.10.4-3.el7_9 | cpe:/o:redhat:rhel_els:7 | RHSA-2024:11344 | 2024-12-18T00:00:00Z |
| gstreamer1-plugins-good-0:1.10.4-3.el7_9 | cpe:/o:redhat:rhel_els:7 | RHSA-2024:11344 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8 | |||
| gstreamer1-plugins-good-0:1.16.1-5.el8_10 | cpe:/a:redhat:enterprise_linux:8 | RHSA-2024:11299 | 2024-12-17T00:00:00Z |
| Red Hat Enterprise Linux 8.2 Advanced Update Support | |||
| gstreamer1-plugins-good-0:1.16.1-2.el8_2 | cpe:/a:redhat:rhel_aus:8.2 | RHSA-2024:11148 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.4 Advanced Mission Critical Update Support | |||
| gstreamer1-plugins-good-0:1.16.1-3.el8_4 | cpe:/a:redhat:rhel_aus:8.4 | RHSA-2024:11346 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.4 Telecommunications Update Service | |||
| gstreamer1-plugins-good-0:1.16.1-3.el8_4 | cpe:/a:redhat:rhel_tus:8.4 | RHSA-2024:11346 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.4 Update Services for SAP Solutions | |||
| gstreamer1-plugins-good-0:1.16.1-3.el8_4 | cpe:/a:redhat:rhel_e4s:8.4 | RHSA-2024:11346 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update Support | |||
| gstreamer1-plugins-good-0:1.16.1-3.el8_6 | cpe:/a:redhat:rhel_aus:8.6 | RHSA-2024:11149 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.6 Telecommunications Update Service | |||
| gstreamer1-plugins-good-0:1.16.1-3.el8_6 | cpe:/a:redhat:rhel_tus:8.6 | RHSA-2024:11149 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.6 Update Services for SAP Solutions | |||
| gstreamer1-plugins-good-0:1.16.1-3.el8_6 | cpe:/a:redhat:rhel_e4s:8.6 | RHSA-2024:11149 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 8.8 Extended Update Support | |||
| gstreamer1-plugins-good-0:1.16.1-4.el8_8 | cpe:/a:redhat:rhel_eus:8.8 | RHSA-2024:11348 | 2024-12-18T00:00:00Z |
| Red Hat Enterprise Linux 9 | |||
| gstreamer1-plugins-good-0:1.22.1-3.el9_5 | cpe:/a:redhat:enterprise_linux:9 | RHSA-2024:11122 | 2024-12-16T00:00:00Z |
| Red Hat Enterprise Linux 9.0 Update Services for SAP Solutions | |||
| gstreamer1-plugins-good-0:1.18.4-6.el9_0 | cpe:/a:redhat:rhel_e4s:9.0 | RHSA-2024:11298 | 2024-12-17T00:00:00Z |
| Red Hat Enterprise Linux 9.2 Extended Update Support | |||
| gstreamer1-plugins-good-0:1.18.4-7.el9_2 | cpe:/a:redhat:rhel_eus:9.2 | RHSA-2024:11119 | 2024-12-16T00:00:00Z |
| Red Hat Enterprise Linux 9.4 Extended Update Support | |||
| gstreamer1-plugins-good-0:1.22.1-3.el9_4 | cpe:/a:redhat:rhel_eus:9.4 | RHSA-2024:11121 | 2024-12-16T00:00:00Z |
No data available yet.
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-3994-1 | gstreamer1.0 security update |
Debian DLA |
DLA-4071-1 | gst-plugins-good1.0 security update |
Debian DSA |
DSA-5832-1 | gstreamer1.0 security update |
Debian DSA |
DSA-5838-1 | gst-plugins-good1.0 security update |
EUVD |
EUVD-2024-42823 | GStreamer is a library for constructing graphs of media-handling components. An integer underflow has been detected in the function qtdemux_parse_theora_extension within qtdemux.c. The vulnerability occurs due to an underflow of the gint size variable, which causes size to hold a large unintended value when cast to an unsigned integer. This 32-bit negative value is then cast to a 64-bit unsigned integer (0xfffffffffffffffa) in a subsequent call to gst_buffer_new_and_alloc. The function gst_buffer_new_allocate then attempts to allocate memory, eventually calling _sysmem_new_block. The function _sysmem_new_block adds alignment and header size to the (unsigned) size, causing the overflow of the 'slice_size' variable. As a result, only 0x89 bytes are allocated, despite the large input size. When the following memcpy call occurs in gst_buffer_fill, the data from the input file will overwrite the content of the GstMapInfo info structure. Finally, during the call to gst_memory_unmap, the overwritten memory may cause a function pointer hijack, as the mem->allocator->mem_unmap_full function is called with a corrupted pointer. This function pointer overwrite could allow an attacker to alter the execution flow of the program, leading to arbitrary code execution. This vulnerability is fixed in 1.24.10. |
Ubuntu USN |
USN-7174-1 | GStreamer vulnerability |
Ubuntu USN |
USN-7176-1 | GStreamer Good Plugins vulnerabilities |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: 1.7% (1.728% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Gstreamer
Gstreamer gstreamer |
|
| CPEs | cpe:2.3:a:gstreamer:gstreamer:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Gstreamer Project
Gstreamer Project gstreamer |
Gstreamer
Gstreamer gstreamer |
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
epss
|
epss
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat rhel Aus
Redhat rhel Els Redhat rhel Tus |
|
| CPEs | cpe:/a:redhat:rhel_aus:8.2 cpe:/a:redhat:rhel_aus:8.4 cpe:/a:redhat:rhel_aus:8.6 cpe:/a:redhat:rhel_e4s:8.4 cpe:/a:redhat:rhel_e4s:8.6 cpe:/a:redhat:rhel_eus:8.8 cpe:/a:redhat:rhel_tus:8.4 cpe:/a:redhat:rhel_tus:8.6 cpe:/o:redhat:rhel_els:7 |
|
| Vendors & Products |
Redhat rhel Aus
Redhat rhel Els Redhat rhel Tus |
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Debian
Debian debian Linux Gstreamer Project Gstreamer Project gstreamer |
|
| Weaknesses | CWE-191 | |
| CPEs | cpe:2.3:a:gstreamer_project:gstreamer:*:*:*:*:*:*:*:* cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:* |
|
| Vendors & Products |
Debian
Debian debian Linux Gstreamer Project Gstreamer Project gstreamer |
|
| Metrics |
cvssV3_1
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat rhel E4s
|
|
| CPEs | cpe:/a:redhat:enterprise_linux:8 cpe:/a:redhat:rhel_e4s:9.0 |
|
| Vendors & Products |
Redhat rhel E4s
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat enterprise Linux
|
|
| CPEs | cpe:/a:redhat:enterprise_linux:9 cpe:/a:redhat:rhel_eus:9.2 |
|
| Vendors & Products |
Redhat enterprise Linux
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat
Redhat rhel Eus |
|
| CPEs | cpe:/a:redhat:rhel_eus:9.4 | |
| Vendors & Products |
Redhat
Redhat rhel Eus |
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | GStreamer is a library for constructing graphs of media-handling components. An integer underflow has been detected in the function qtdemux_parse_theora_extension within qtdemux.c. The vulnerability occurs due to an underflow of the gint size variable, which causes size to hold a large unintended value when cast to an unsigned integer. This 32-bit negative value is then cast to a 64-bit unsigned integer (0xfffffffffffffffa) in a subsequent call to gst_buffer_new_and_alloc. The function gst_buffer_new_allocate then attempts to allocate memory, eventually calling _sysmem_new_block. The function _sysmem_new_block adds alignment and header size to the (unsigned) size, causing the overflow of the 'slice_size' variable. As a result, only 0x89 bytes are allocated, despite the large input size. When the following memcpy call occurs in gst_buffer_fill, the data from the input file will overwrite the content of the GstMapInfo info structure. Finally, during the call to gst_memory_unmap, the overwritten memory may cause a function pointer hijack, as the mem->allocator->mem_unmap_full function is called with a corrupted pointer. This function pointer overwrite could allow an attacker to alter the execution flow of the program, leading to arbitrary code execution. This vulnerability is fixed in 1.24.10. | |
| Title | GHSL-2024-166: GStreamer Integer overflows in MP4/MOV demuxer and memory allocator that can lead to out-of-bounds writes | |
| Weaknesses | CWE-190 | |
| References |
| |
| Metrics |
cvssV4_0
|