Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft Huffyuv BGR24/BGRA video with short bitstream
-
DeliveryDeliver file to victim's decoder
-
ExploitTruncated entropy data ends decode early
-
ExecutionUninitialized s->temp[0] heap bytes enter output frame
-
ImpactAttacker reads leaked heap from decoded pixels
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Variable initialization
|
| Exploitation Conditions | Exploitation requires a vulnerable FFmpeg build (2.3 through 9.0.2) to decode an attacker-crafted Huffyuv (FFVHuff/HuffYUV) video in the packed BGR24 or BGRA pixel format whose packed-BGR bitstream/entropy data terminates early, so decode_slice() emits uninitialized s->temp[0] bytes into the frame. Limiting factors: the vector is local (AV:L) with passive user interaction (UI:P) - the attacker cannot trigger it remotely and must get a user or automated pipeline to process the malicious file; the leak is confined to specific BGR packed paths and short bitstreams; and the attacker must be able to observe the decoded output to actually recover the leaked heap bytes. Impact is confidentiality-only (information disclosure) with no code execution or crash. |
| Impact | This is a medium-severity information-disclosure issue, and the available signals agree on a moderate - not emergency - priority. The CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:N/UI:P, VC:H only) describes a local vector requiring passive user interaction, with no integrity or availability impact: an attacker cannot reach this over the network against a running service - a victim must decode an attacker-supplied Huffyuv file. The vuln.today decision label is 'this_month', not act_now or emergency, consistent with that reading. No EPSS score was supplied and the CVE is not listed in CISA KEV, so there is no public evidence of active exploitation; exploitation status is 'no public exploit identified at time of analysis' (the references are a vendor PR, the fix commit, source lines, and the VulnCheck advisory - none is exploit code). The main thing elevating real-world relevance is the enormous deployment footprint of FFmpeg itself, not the severity of a single bounded heap leak. Net: a genuine but non-critical issue - patch on a normal cadence rather than treat as an emergency. Note one tension to verify: the input marks PR:N (unauthenticated) yet the vector is AV:L with UI:P, so 'unauthenticated' here means no attacker credentials are needed but a local user must be induced to open or process the malicious media. |
| Exploit ScenarioDerived | An attacker crafts a Huffyuv-encoded video in BGR24 or BGRA pixel format whose entropy/bitstream data ends early, then gets a victim to decode it with a vulnerable FFmpeg build (e.g. via a media player, transcoding service, or thumbnailer). During decode_slice(), uninitialized s->temp[0] heap bytes are written into the output frame; the attacker then observes the decoded pixels (e.g. in a re-encoded or thumbnailed output) to recover leaked heap memory. No public exploit code was identified, but the fix commit illustrates the exact trigger. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 01, 2026
Heap memory disclosure in FFmpeg's Huffyuv decoder affects builds from 2.3 through 9.0.2: when a crafted Huffyuv (FFVHuff/HuffYUV) video in packed BGR24 or BGRA pixel format ends its entropy data early, decode_slice() adds uninitialized s->temp[0] bytes into the decoded frame, so heap contents are written into output pixels. The trigger is local with passive user interaction (CVSS:4.0/AV:L/UI:P, PR:N), and impact is confidentiality-only - no code execution, no crash, no integrity effect - and the attacker must be able to observe the decoded output to actually recover the leaked bytes. A vendor fix exists as an upstream PR/commit and the vuln.today decision label is this_month, indicating moderate rather than emergency priority; no public exploit code and no confirmed active exploitation were identified at time of analysis.
RemediationAI
Apply the upstream fix: commit 7c73707355708c846f718cca90096bc1a33c8989 in libavcodec/huffyuvdec.c, tracked as PR 24869 at https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/24869; patch availability is confirmed from the vendor, but the input does not name a tagged release containing it, so verify the fix is present in the FFmpeg build you deploy (or backport the memset/odd-width zeroing changes) rather than assuming a version number is patched. Because the patch is confined to the packed-BGR decode paths (decode_plane_bitstream() and decode_bgr_1(), including their 16-bit variants), pipelines that never produce BGR24/BGRA output from untrusted Huffyuv files exercise less of the affected sink - forcing planar output such as yuv420p avoids it, at the cost of pixel-format conversion work and any loss of exact packed-BGR fidelity. Where the fix cannot be deployed promptly, run untrusted media decoding in a low-privilege, isolated worker so leaked heap bytes cannot be observed or exfiltrated by the party supplying the file; this reduces throughput and is a containment measure, not a substitute for the patch. No vendor-stated workaround beyond updating is given in the available references.
Affected VersionsENISA
Affected Packages
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
Huffyuv is FFmpeg's lossless Huffman-based video codec (FFVHuff/HuffYUV), implemented in libavcodec/huffyuvdec.c; the affected code is the packed-BGR decode path that reverses the codec's BGR24/BGRA packing. Per the upstream commit 7c73707355708c846f718cca90096bc1a33c8989, the helper decode_plane_bitstream() and the inlined decode_bgr_1() write into a per-context scratch buffer s->temp[0] (and s->temp16[0] for 16-bit paths). When the packed bitstream's entropy data terminates early, those loops exit without filling the remainder of the scratch buffer, yet the leftover entries are still consumed and added into the output pixels; the fix zeroes the unfilled tail with memset(s->temp[0] + 2 * i, 0, 2 * (count - i)) and the analogous 4-byte/16-bit variants, and additionally zeroes the final sample when the width is odd (else if (width & 1) s->temp[0][width - 1] = 0). The root cause class is CWE-908, use of uninitialized resource, i.e. the decoder reads a buffer that was never initialized on this path rather than one that is out of bounds. The exact bitstream conditions that make the entropy segment end early are visible in the patch rather than described in prose in the available sources, and the reference to libavcodec/huffyuvdec.c line 802 at tag n9.0.2 marks the vulnerable code location.
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
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Local because a victim must decode an attacker-supplied file (UI:R); no attacker credentials needed (PR:N); confidentiality-only heap disclosure, so I:N/A:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
FFmpeg 2.3 through 9.0.2 contains a use of uninitialized resource vulnerability in the Huffyuv decoder that allows attackers to leak heap memory into decoded pixels via short packed-BGR bitstreams. Attackers can craft a Huffyuv BGR24/BGRA video whose entropy data ends early, causing decode_slice() to add uninitialized s->temp[0] bytes into output frames, exposing heap contents.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Related Vulnerabilities in FFmpeg Decoder Uninitialized Memory Leaks
View all 5FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the concat protocol
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
FFmpeg 2.x allows remote attackers to conduct cross-origin attacks and read arbitrary files by using the subfile protoco
The av_reallocp_array function in libavutil/mem.c in FFmpeg before 2.0.1 has an unspecified impact and remote vectors re
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
Out-of-bounds heap write in FFmpeg's RASC video decoder (decode_dlta in libavcodec/rasc.c) allows attackers to corrupt m
Memory corruption in FFmpeg before 8.1 allows an attacker who can supply a crafted H.264/HEVC media file to corrupt heap
Integer Overflow vulnerability in function filter_sobel in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attacker
Integer Overflow vulnerability in function filter_robert in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attacke
Integer Overflow vulnerability in function filter_prewitt in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attack
Integer Overflow vulnerability in function filter16_sobel in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows attack
Integer Overflow vulnerability in function filter16_roberts in libavfilter/vf_convolution.c in Ffmpeg 4.2.1, allows atta
EUVD-2026-114744
GHSA-rp9m-mw76-ppmp
NVD
CVE.org
VulDB
Exploit-DB