Skip to main content

FFmpeg EUVDEUVD-2026-54166

| CVE-2026-70632 HIGH
Out-of-bounds Write (CWE-787)
2026-08-06 disclosure@vulncheck.com GHSA-q24x-99v6-6hxc
8.5
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Deliver crafted AVI file to FFmpeg process
  2. Delivery
    FFmpeg probes AVI stream metadata
  3. Exploit
    cfhd_decode() enters transform-type-2 non-Bayer reconstruction
  4. Install
    horiz_filter_clip() writes oversized rows beyond heap frame buffer
  5. C2
    Live cleanup callback pointer overwritten on heap
  6. Execute
    Error or teardown path invokes corrupted callback
  7. Impact
    Arbitrary code executed under FFmpeg process privileges

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The target must run FFmpeg version 4.4 or later and prior to 9.0 with the native CFHD decoder compiled in, which is the default build configuration for all standard FFmpeg distributions. The crafted AVI file must be processed by FFmpeg - either by a user manually invoking ffmpeg or ffprobe on the file, or by an automated pipeline (transcoder, media server, upload processor) probing the stream. Passive user interaction is required (CVSS 4.0 UI:P): the file must be opened or probed by the FFmpeg process, but no active user steps beyond triggering file processing are needed. No authentication or elevated privileges are required (PR:N). The attack vector is local (AV:L in the CVSS 4.0 vector), meaning the crafted file must be accessible to the FFmpeg process on the local filesystem or a mounted share - purely autonomous remote network exploitation without file delivery and local processing is not possible. The vulnerability is triggered specifically in the transform-type-2 reconstruction path for non-Bayer CFHD content; standard Bayer-mode CineForm content does not trigger the flaw, slightly narrowing the effective trigger surface within the CFHD format. Factors limiting exploitation: the file must reach the local FFmpeg process (requires user action or an exposed automated pipeline), and exploitation of heap corruption to redirect execution depends on heap layout at runtime, which may vary across OS, allocator version, and FFmpeg build configuration.

Impact

The provided CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P, score 8.5) assigns a local attack vector with passive user interaction, low attack complexity, no attack requirements, and no privileges required, with High impact across confidentiality, integrity, and availability. The local attack vector reflects that a crafted AVI file must be processed by the local FFmpeg instance - but many FFmpeg deployments in transcoding pipelines, media servers, and upload services process externally sourced files, effectively making user-triggered file processing the only barrier to exploitation. No EPSS score was provided and this CVE is absent from CISA KEV at time of analysis, leaving exploitation likelihood unquantified from probabilistic sources; however, the concrete RCE escalation mechanism (callback pointer overwrite) described in the CVE text elevates the practical risk well above vulnerabilities where code execution is speculative. The extremely broad affected version range (4.4 to <9.0, spanning approximately five years of releases) combined with FFmpeg's prevalence in media infrastructure means the exposed population is large. The absence of a formally tagged stable release fixing the vulnerability - only upstream commits and a PR are referenced - creates deployment risk for packagers relying on distro repositories. No tension between CVSS signals and description was identified, except that the CVE description states 'remote attackers' while AV:L implies local processing; this is consistent with a social-engineering or upload-triggered delivery model rather than a direct network exploit.

Exploit ScenarioDerived

An attacker crafts a malicious AVI file with a CFHD-encoded video stream whose transform-type-2 reconstruction parameters specify a logical output width that violates the non-Bayer invariant, causing horiz_filter_clip() to write 16-bit sample rows beyond the heap-allocated output frame buffer during FFmpeg stream probing. The overwrite corrupts a live cleanup callback function pointer on the heap; when the CFHD decoder's cleanup routine invokes the pointer on teardown or error recovery, execution transfers to attacker-controlled memory, achieving arbitrary code execution under the privileges of the FFmpeg process. No public proof-of-concept exploit code has been identified at time of analysis, but the concrete escalation path described in the CVE text - specific function, specific data structure overwritten - substantially reduces the development effort required to weaponize this flaw.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 06, 2026

Out-of-bounds heap write in FFmpeg's native GoPro CineForm HD (CFHD) decoder affects versions 4.4 through 8.x, allowing remote attackers to corrupt heap memory by supplying a crafted AVI file that is opened or probed by a vulnerable build. The root failure - missing output-width bounds enforcement in the transform-type-2 reconstruction path - causes horiz_filter_clip() to write 16-bit sample rows far beyond the allocated frame buffer, with a concrete escalation path to arbitrary code execution through overwrite of a live cleanup callback pointer. No public exploit or active exploitation (CISA KEV) has been identified at time of analysis; three upstream fix commits and PR #23898 are available at code.ffmpeg.org pending a formal stable release.

RemediationAI

The primary fix is to upgrade FFmpeg to version 9.0 or later, which removes the out-of-bounds write by enforcing the non-Bayer output-width invariant in cfhd_decode(). The upstream fix is available as three commits (1006a2151236, 16b2049d4d52, db05df9d135f) and PR #23898 at code.ffmpeg.org; a formally tagged stable release version was not independently confirmed from the provided references - verify with the FFmpeg project release page before deploying in production. Downstream package maintainers should backport all three commits as a set, since they appear to address the flaw across multiple code paths in the CFHD decoder. Where immediate upgrade is not feasible, the most effective compensating control is to prevent untrusted or externally sourced AVI files from reaching any FFmpeg process; implementing input allowlisting at the ingestion layer (e.g., rejecting AVI containers or CFHD-encoded streams before they reach the decoder) eliminates the attack surface with the trade-off of rejecting legitimate GoPro CineForm content. Sandboxing the FFmpeg process using seccomp-bpf profiles or containers with restricted syscall surfaces limits the blast radius of a successful heap corruption exploit but does not prevent exploitation itself. For custom FFmpeg builds, disabling the CFHD decoder at compile time (removing libavcodec/cfhd.c from the build) fully eliminates exposure at the cost of losing GoPro CineForm decoding capability.

Affected VersionsENISA

FFmpeg 4.4 <9.0

Affected Packages

euvd ffmpeg fix: 9.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

CWE-787 (Out-of-bounds Write) manifests inside libavcodec's CFHD decoder, the native FFmpeg implementation for decoding GoPro CineForm HD encoded video streams embedded in AVI containers. During stream probing - the demuxer phase in which FFmpeg reads file headers and initial packet data to identify format, codec, and stream parameters before full decoding begins - the cfhd_decode() function enters the transform-type-2 wavelet reconstruction path without verifying that the logical output width satisfies the non-Bayer invariant required by that path. As a result, horiz_filter_clip(), the horizontal low-pass filter and sample clipping routine used during inverse wavelet reconstruction, writes oversized 16-bit sample rows that extend far beyond the end of the heap-allocated output frame buffer. The overwrite region can coincide with live heap metadata including cleanup callback function pointers; when the callback is subsequently invoked during codec teardown or an error path, execution is redirected to attacker-controlled data, realizing full arbitrary code execution. Affected products span FFmpeg 4.4 through all releases prior to 9.0 on all supported platforms. References point to three distinct fix commits (1006a215, 16b2049d, db05df9d) and PR #23898 on the FFmpeg upstream repository.

Know when Ffmpeg gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 8.5 HIGH
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

AV:N because remote attackers supply the crafted AVI file; UI:R because local processing must be triggered; full CIA impact reflects the concrete RCE escalation path.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE 7.8 HIGH
AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Red Hat 7.8 HIGH

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 06, 2026 - 23:03 EUVD
CVE Published
Aug 06, 2026 - 22:18 cve.org
HIGH 8.5

DescriptionCVE.org

FFmpeg versions from 4.4 up to, but not including, 9.0 contain an out-of-bounds heap write vulnerability in the native GoPro CineForm HD (CFHD) decoder that allows remote attackers to corrupt heap memory by supplying a crafted AVI file during stream probing. The cfhd_decode() function fails to enforce the non-Bayer logical output-width invariant in the transform-type-2 reconstruction path, causing horiz_filter_clip() to write oversized 16-bit sample rows far beyond the allocated output frame buffer, which can be escalated to arbitrary code execution via overwrite of a live cleanup callback pointer.

Executive ViewAI

Why It Matters

FFmpeg versions 4.4 through 8.x contain a high-severity heap memory vulnerability in the GoPro CineForm HD decoder that enables arbitrary code execution through maliciously crafted video files. This affects any organization using FFmpeg to process remote or untrusted video content, creating a direct path to system compromise if an attacker supplies a crafted AVI file. Immediate audit and containment actions are necessary to prevent potential exploitation.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include: disable the CFHD decoder module if CineForm processing is not required; restrict AVI file input to trusted, pre-validated sources; implement network controls to limit remote file intake for video processing services; apply input validation to reject malformed AVI files before processing.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
High
core multimedia framework used in streaming, transcoding, and media pipelines globally
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

More in Ffmpeg

View all
CVE-2016-1897 MEDIUM POC
5.5 Jan 15

FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the concat protocol

CVE-2017-9993 HIGH
7.5 Jun 28

FFmpeg before 2.8.12, 3.0.x and 3.1.x before 3.1.9, 3.2.x before 3.2.6, and 3.3.x before 3.3.2 does not properly restric

CVE-2016-1898 MEDIUM POC
5.5 Jan 15

FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the subfile protoco

CVE-2013-4265 CRITICAL POC
10.0 Nov 23

The av_reallocp_array function in libavutil/mem.c in FFmpeg before 2.0.1 has an unspecified impact and remote vectors re

CVE-2020-12284 CRITICAL POC
9.8 Apr 28

cbs_jpeg_split_fragment in libavcodec/cbs_jpeg.c in FFmpeg 4.1 and 4.2.2 has a heap-based buffer overflow during JPEG_MA

CVE-2026-58049 HIGH POC
8.8 Jun 28

Out-of-bounds heap write in FFmpeg's RASC video decoder (decode_dlta in libavcodec/rasc.c) allows attackers to corrupt m

CVE-2026-30754 HIGH POC
8.8 Sep 08

Memory corruption in FFmpeg before 8.1 allows an attacker who can supply a crafted H.264/HEVC media file to corrupt heap

CVE-2021-38094 HIGH POC
8.8 Sep 20

Integer Overflow vulnerability in function filter_sobel in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attacker

CVE-2021-38093 HIGH POC
8.8 Sep 20

Integer Overflow vulnerability in function filter_robert in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attacke

CVE-2021-38092 HIGH POC
8.8 Sep 20

Integer Overflow vulnerability in function filter_prewitt in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attack

CVE-2021-38091 HIGH POC
8.8 Sep 20

Integer Overflow vulnerability in function filter16_sobel in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attack

CVE-2021-38090 HIGH POC
8.8 Sep 20

Integer Overflow vulnerability in function filter16_roberts in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows atta

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Not-Affected
SUSE Linux Enterprise Module for Desktop Applications 15 SP7 Not-Affected
SUSE Linux Enterprise Module for Package Hub 15 SP7 Not-Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy