CVE-2018-14054

9.8 CRITICAL

📋 TL;DR

CVE-2018-14054 is a double-free vulnerability in MP4v2 library's MP4StringProperty class that allows attackers to execute arbitrary code or cause denial of service. When an exception occurs during MP4 file processing, a dangling pointer gets freed twice, potentially corrupting memory. This affects any application using MP4v2 2.0.0 for MP4 file manipulation.

💻 Affected Systems

Products:
  • MP4v2
Versions: Version 2.0.0
Operating Systems: Linux, Windows, macOS, BSD
Default Config Vulnerable: ⚠️ Yes
Notes: Any application linking against MP4v2 2.0.0 library is vulnerable when processing MP4 files

📦 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 or denial of service when processing malicious MP4 files

🟢

If Mitigated

Contained application crash with no privilege escalation if proper sandboxing exists

🌐 Internet-Facing: HIGH - MP4 processing applications exposed to user-uploaded files are vulnerable
🏢 Internal Only: MEDIUM - Internal applications processing MP4 files could be exploited via malicious files

🎯 Exploit Status

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

Exploitation requires crafting a malicious MP4 file that triggers the exception condition

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 2.1.0

Vendor Advisory: https://github.com/enzo1982/mp4v2/releases/tag/v2.1.0

Restart Required: Yes

Instructions:

1. Download MP4v2 2.1.0 from GitHub releases. 2. Uninstall existing MP4v2. 3. Compile and install version 2.1.0. 4. Restart affected applications.

🔧 Temporary Workarounds

Disable MP4 file processing

all

Temporarily disable MP4 file upload/processing in applications

Input validation

all

Implement strict validation of MP4 files before processing

🧯 If You Can't Patch

  • Implement application sandboxing to limit exploit impact
  • Use network segmentation to isolate MP4 processing systems

🔍 How to Verify

Check if Vulnerable:

Check if MP4v2 version 2.0.0 is installed: 'mp4info --version' or check library version

Check Version:

mp4info --version || find /usr -name '*mp4v2*' -exec strings {} \; | grep -i version

Verify Fix Applied:

Verify MP4v2 version is 2.1.0 or higher: 'mp4info --version' should show 2.1.0+

📡 Detection & Monitoring

Log Indicators:

  • Application crashes with segmentation faults
  • Memory corruption errors in system logs
  • Unexpected process termination during MP4 processing

Network Indicators:

  • Unusual outbound connections from MP4 processing applications
  • Large MP4 file uploads followed by application crashes

SIEM Query:

process_name:mp4* AND (event_type:crash OR error_message:"segmentation fault" OR error_message:"double free")

🔗 References

📤 Share & Export