Cloudanix VulnDB

CVE-2024-4453

High · 7.8

CVSS

7.8

EPSS

1.6%

Published

May 22, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in software that handles photos and videos could let attackers take over a computer simply by tricking it into opening a specially made file.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Remote Code Execution
Component
Library
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Integer overflow during EXIF metadata parsing in GStreamer leads to incorrect buffer allocation sizes, enabling out-of-bounds memory access and arbitrary code execution in the context of the processing process.

Why it matters to the business

Attackers could gain control over systems that process media files containing EXIF data, resulting in potential data theft, malware deployment, or disruption of media-handling workflows across desktop and embedded applications.

How an attack unfolds

An attacker creates a media file embedding crafted EXIF metadata with values that trigger an integer overflow, then delivers the file to a target system; when GStreamer parses the metadata during normal media handling, the overflow allows injection and execution of attacker-controlled code.

How to fix it

Upgrade desktop.org/tpm/gstreamer (GIT) to commit e68eccff103ab0e91e6d77a892f57131b33902f5 or later; rebuild dependent applications against the patched library and verify the update across all affected installations.

How to confirm the fix worked

Confirm the installed GStreamer commit hash matches or exceeds e68eccff103ab0e91e6d77a892f57131b33902f5; recompile test applications and attempt parsing of known-good and boundary EXIF media files to ensure no overflow occurs.

Typical attack path

  1. Craft media file with malicious EXIF metadata designed to overflow an integer during size calculation
  2. Deliver the file to a victim via email, web download, or removable media
  3. Victim application invokes GStreamer to parse or render the media
  4. Vulnerable EXIF parser computes incorrect allocation size
  5. Overflow enables memory corruption and shellcode execution

How to detect it

Review process crash logs and memory dumps from GStreamer-based applications for signs of heap corruption during EXIF parsing; inspect application logs for unexpected file handling errors on media containing EXIF tags.

What your security team should do

  • Prioritize updating GStreamer to the fixed commit across all environments
  • Inventory and replace any downstream packages that embed the vulnerable library
  • Implement media file sandboxing or parsing restrictions until patches are deployed
  • Monitor vulnerability disclosure feeds for related issues in GStreamer ecosystem components

The record

GStreamer EXIF Metadata Parsing Integer Overflow Remote Code Execution Vulnerability. This vulnerability allows remote attackers to execute arbitrary code on affected installations of GStreamer. Interaction with this library is required to exploit this vulnerability but attack vectors may vary depending on the implementation. The specific flaw exists within the parsing of EXIF metadata. The issue results from the lack of proper validation of user-supplied data, which can result in an integer overflow before allocating a buffer. An attacker can leverage this vulnerability to execute code in the context of the current process. . Was ZDI-CAN-23896.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 gstreamer1-plugins-base 0 1.16.1-4.el8_10
AlmaLinux:8 gstreamer1-plugins-base-devel 0 1.16.1-4.el8_10
AlmaLinux:9 gstreamer1 0 1.22.12-3.el9
AlmaLinux:9 gstreamer1-devel 0 1.22.12-3.el9
AlmaLinux:9 gstreamer1-plugins-bad-free 0 1.22.12-3.el9
AlmaLinux:9 gstreamer1-plugins-bad-free-devel 0 1.22.12-3.el9
AlmaLinux:9 gstreamer1-plugins-bad-free-libs 0 1.22.12-3.el9
AlmaLinux:9 gstreamer1-plugins-ugly-free 0 1.22.12-3.el9
AlmaLinux:9 gstreamer1-rtsp-server 0 1.22.12-3.el9
Debian:10 gst-plugins-base1.0 0 1.14.4-2+deb10u3
Debian:11 gst-plugins-base1.0 0 1.18.4-2+deb11u2
Debian:12 gst-plugins-base1.0 0 1.22.0-3+deb12u2
Debian:13 gst-plugins-base1.0 0 1.24.3-1
Mageia:9 gstreamer1.0-plugins-base 0 1.22.11-1.1.mga9
Red Hat:enterprise_linux:8::appstream gstreamer1-plugins-base 0 0:1.16.1-4.el8_10
Red Hat:enterprise_linux:8::appstream gstreamer1-plugins-base-debuginfo 0 0:1.16.1-4.el8_10
Red Hat:enterprise_linux:8::appstream gstreamer1-plugins-base-debugsource 0 0:1.16.1-4.el8_10
Red Hat:enterprise_linux:8::appstream gstreamer1-plugins-base-devel 0 0:1.16.1-4.el8_10
Red Hat:enterprise_linux:8::appstream gstreamer1-plugins-base-tools-debuginfo 0 0:1.16.1-4.el8_10
Rocky Linux:8 gstreamer1-plugins-base 0 0:1.16.1-4.el8_10
SUSE:Enterprise Storage 7 gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Enterprise Storage 7.1 gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Linux Enterprise Micro 5.2 gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise Micro 5.3 gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Linux Enterprise Micro 5.4 gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Linux Enterprise Micro 5.5 gstreamer-plugins-base 0 1.22.0-150500.3.8.2
SUSE:Linux Enterprise Module for Basesystem 15 SP5 gstreamer-plugins-base 0 1.22.0-150500.3.8.2
SUSE:Linux Enterprise Module for Basesystem 15 SP6 gstreamer-plugins-base 0 1.24.0-150600.3.3.1
SUSE:Linux Enterprise Module for Package Hub 15 SP5 gstreamer-plugins-base 0 1.22.0-150500.3.8.2
SUSE:Linux Enterprise Module for Package Hub 15 SP6 gstreamer-plugins-base 0 1.24.0-150600.3.3.1
SUSE:Linux Enterprise Server 12 SP5 gstreamer-plugins-base 0 1.8.3-13.15.1
SUSE:Linux Enterprise Server 15 SP2-LTSS gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise Server 15 SP3-LTSS gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise Server 15 SP4-LTSS gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 gstreamer-plugins-base 0 1.8.3-13.15.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 gstreamer-plugins-base 0 1.16.3-150200.4.14.2
SUSE:Linux Enterprise Server for SAP Applications 15 SP4 gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Linux Enterprise Software Development Kit 12 SP5 gstreamer-plugins-base 0 1.8.3-13.15.1
SUSE:Linux Enterprise Workstation Extension 12 SP5 gstreamer-plugins-base 0 1.8.3-13.15.1
SUSE:Manager Proxy 4.3 gstreamer-plugins-base 0 1.20.1-150400.3.8.2
SUSE:Manager Server 4.3 gstreamer-plugins-base 0 1.20.1-150400.3.8.2
Ubuntu:16.04:LTS gst-plugins-base0.10 0 No fix
Ubuntu:20.04:LTS gst-plugins-base1.0 0 1.16.3-0ubuntu1.3
Ubuntu:22.04:LTS gst-plugins-base1.0 0 1.20.1-1ubuntu0.2
Ubuntu:23.10 gst-plugins-base1.0 0 1.22.6-1ubuntu0.1
Ubuntu:24.04:LTS gst-plugins-base1.0 0 1.24.2-1ubuntu0.1
Ubuntu:Pro:16.04:LTS gst-plugins-base0.10 0 No fix
Ubuntu:Pro:16.04:LTS gst-plugins-base1.0 0 No fix
Ubuntu:Pro:16.04:LTS gst-plugins-base1.0 0 1.8.3-1ubuntu0.3+esm2
Ubuntu:Pro:18.04:LTS gst-plugins-base1.0 0 No fix
Ubuntu:Pro:18.04:LTS gst-plugins-base1.0 0 1.14.5-0ubuntu1~18.04.3+esm1
openSUSE:Leap 15.5 gstreamer-plugins-base 0 1.22.0-150500.3.8.2
openSUSE:Leap 15.6 gstreamer-plugins-base 0 1.24.0-150600.3.3.1
openSUSE:Leap Micro 5.3 gstreamer-plugins-base 0 1.20.1-150400.3.8.2
openSUSE:Leap Micro 5.4 gstreamer-plugins-base 0 1.20.1-150400.3.8.2

Related vulnerabilities