CVE-2021-21843

8.8 HIGH

📋 TL;DR

This vulnerability allows attackers to execute arbitrary code or cause denial of service by tricking users into opening specially crafted MPEG-4 video files. It affects applications using the GPAC library for video processing, particularly on 32-bit platforms. Media players, video editors, and web applications that process MPEG-4 content are potentially vulnerable.

💻 Affected Systems

Products:
  • GPAC Project on Advanced Content library
  • Applications using GPAC library for MPEG-4 decoding
Versions: v1.0.1 and possibly earlier versions
Operating Systems: All platforms (primarily affects 32-bit systems)
Default Config Vulnerable: ⚠️ Yes
Notes: Most severe on 32-bit platforms due to integer overflow characteristics

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise, data theft, or ransomware deployment.

🟠

Likely Case

Application crash (denial of service) or limited memory corruption leading to unstable behavior.

🟢

If Mitigated

Application crash with no privilege escalation if sandboxed or running with minimal permissions.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: LOW

🎯 Exploit Status

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

Exploit requires user interaction to open malicious video file

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: v1.0.1+ (patched versions available)

Vendor Advisory: https://github.com/gpac/gpac/security/advisories

Restart Required: Yes

Instructions:

1. Update GPAC library to latest patched version. 2. Rebuild applications using GPAC. 3. Restart affected services.

🔧 Temporary Workarounds

Disable MPEG-4 processing

all

Configure applications to disable MPEG-4 video decoding if not required

Application-specific configuration required

Sandbox video processing

linux

Run video processing in isolated containers or sandboxes

docker run --security-opt no-new-privileges ...
firejail --private ...

🧯 If You Can't Patch

  • Implement strict file upload validation for video files
  • Use application allowlisting to prevent unauthorized video players

🔍 How to Verify

Check if Vulnerable:

Check GPAC library version: gpac -version or examine linked library versions in applications

Check Version:

gpac -version 2>/dev/null || strings /usr/lib/libgpac.so | grep 'GPAC'

Verify Fix Applied:

Verify GPAC version is newer than v1.0.1 and check for security patches in changelog

📡 Detection & Monitoring

Log Indicators:

  • Application crashes with memory corruption errors
  • Segmentation faults in video processing components

Network Indicators:

  • Unusual MPEG-4 file uploads to web applications
  • Video file downloads from suspicious sources

SIEM Query:

process_name:"video_player" AND (event_type:"crash" OR memory_violation:"heap")

🔗 References

📤 Share & Export