CVE-2025-63757

7.5 HIGH

📋 TL;DR

An integer overflow vulnerability in FFmpeg's libswscale component allows attackers to cause heap corruption when processing specially crafted YUV video files. This affects any application using FFmpeg 8.0 for video processing or conversion. The vulnerability could lead to denial of service or potentially remote code execution.

💻 Affected Systems

Products:
  • FFmpeg
  • Applications using FFmpeg libraries
  • Media processing tools built on FFmpeg
Versions: FFmpeg 8.0
Operating Systems: Linux, Windows, macOS, BSD, All platforms running FFmpeg
Default Config Vulnerable: ⚠️ Yes
Notes: Any application using FFmpeg's libswscale component for YUV format conversion is vulnerable when processing untrusted video files.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise of the FFmpeg process, potentially allowing attacker to execute arbitrary code with the privileges of the FFmpeg process.

🟠

Likely Case

Application crash (denial of service) when processing malicious video files, potentially disrupting video processing services or media applications.

🟢

If Mitigated

Controlled crash with no privilege escalation if proper sandboxing and privilege separation are implemented.

🌐 Internet-Facing: MEDIUM - Many web applications use FFmpeg for video processing of user-uploaded content, making exploitation possible through file uploads.
🏢 Internal Only: LOW - Internal systems typically process trusted media files, reducing attack surface unless processing user-generated content.

🎯 Exploit Status

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

Proof of concept available in GitHub gist demonstrates crash. Full weaponization for RCE would require additional heap manipulation.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: FFmpeg 8.1 or later

Vendor Advisory: https://ffmpeg.org/security.html

Restart Required: Yes

Instructions:

1. Update FFmpeg to version 8.1 or later. 2. Rebuild any applications using FFmpeg libraries. 3. Restart services using FFmpeg.

🔧 Temporary Workarounds

Disable YUV processing for untrusted files

all

Configure applications to reject or skip YUV format processing for untrusted input files

Run FFmpeg in sandboxed environment

linux

Execute FFmpeg with reduced privileges using containerization or sandboxing

docker run --security-opt=no-new-privileges -u nobody ffmpeg

🧯 If You Can't Patch

  • Implement strict input validation to reject malformed video files before FFmpeg processing
  • Run FFmpeg processes with minimal privileges and in isolated environments

🔍 How to Verify

Check if Vulnerable:

Check FFmpeg version: ffmpeg -version | grep 'FFmpeg version' and verify if it's 8.0

Check Version:

ffmpeg -version | grep 'FFmpeg version'

Verify Fix Applied:

Verify FFmpeg version is 8.1 or later: ffmpeg -version | grep 'FFmpeg version'

📡 Detection & Monitoring

Log Indicators:

  • FFmpeg process crashes with segmentation fault
  • Abnormal termination of video processing services
  • Error logs mentioning libswscale or heap corruption

Network Indicators:

  • Multiple failed video upload attempts
  • Unusual video file upload patterns

SIEM Query:

process.name:ffmpeg AND (event.action:crash OR exit_code:139)

🔗 References

📤 Share & Export