CVE-2023-3012

7.8 HIGH

📋 TL;DR

A NULL pointer dereference vulnerability in GPAC multimedia framework allows attackers to cause denial of service (crash) by exploiting improper handling of certain media files. This affects all systems running GPAC versions prior to 2.2.2, particularly those processing untrusted media content.

💻 Affected Systems

Products:
  • GPAC (GPAC Project on Advanced Content)
Versions: All versions prior to 2.2.2
Operating Systems: Linux, Windows, macOS, BSD
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerable in default configurations when processing media files. Applications using GPAC libraries are also affected.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete application crash leading to denial of service, potentially disrupting media processing services or applications using GPAC libraries.

🟠

Likely Case

Application crash when processing maliciously crafted media files, causing service disruption.

🟢

If Mitigated

Limited impact with proper input validation and sandboxing, though crashes may still occur.

🌐 Internet-Facing: MEDIUM - Exploitable if processing user-uploaded media files, but requires specific file processing.
🏢 Internal Only: LOW - Typically requires local file access or specific media processing workflows.

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires crafting a malicious media file that triggers the NULL pointer dereference. Public proof-of-concept exists in commit references.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.2.2 and later

Vendor Advisory: https://github.com/gpac/gpac/commit/53387aa86c1af1228d0fa57c67f9c7330716d5a7

Restart Required: Yes

Instructions:

1. Download GPAC 2.2.2 or later from official repository. 2. Compile and install following standard build procedures. 3. Restart any services or applications using GPAC libraries.

🔧 Temporary Workarounds

Input Validation

all

Implement strict input validation for media files before processing with GPAC.

Sandbox Processing

linux

Run GPAC media processing in isolated containers or sandboxes to limit crash impact.

docker run --rm -v /path/to/media:/media gpac:latest

🧯 If You Can't Patch

  • Restrict processing of untrusted media files
  • Implement monitoring and automatic restart for GPAC processes

🔍 How to Verify

Check if Vulnerable:

Check GPAC version with 'gpac -version' or 'MP4Box -version' and verify if below 2.2.2.

Check Version:

gpac -version 2>&1 | head -1

Verify Fix Applied:

Confirm version is 2.2.2 or higher and test with known malicious media files that previously caused crashes.

📡 Detection & Monitoring

Log Indicators:

  • Segmentation fault
  • NULL pointer dereference
  • GPAC crash logs
  • Application termination without error

Network Indicators:

  • Unusual media file uploads followed by service disruption

SIEM Query:

source="application.log" AND ("segmentation fault" OR "null pointer" OR "gpac crash")

🔗 References

📤 Share & Export