Skip to main content
Meet us at Black Hat USA 2026— Las Vegas, August 1–6Book a Meeting
Mallory
UnratedPublic exploit

PixelSmash: Heap Out-of-Bounds Write in FFmpeg MagicYUV Decoder

IdentifiersCVE-2026-8461CWE-787

CVE-2026-8461, dubbed PixelSmash, is a heap out-of-bounds write vulnerability in FFmpeg's libavcodec library, specifically in the MagicYUV decoder implementation in libavcodec/magicyuv.C. The flaw is triggered when decoding specially crafted MagicYUV video streams, including files delivered in AVI, MKV, or MOV containers. The reported root cause is inconsistent chroma plane height calculations between FFmpeg's frame allocator and the MagicYUV decoder during slice-based decoding. In affected cases, attacker-controlled odd slice_height values can cause the decoder to write an extra chroma row past the end of the allocated heap buffer, producing a one-row heap overflow with attacker-controlled data. This can crash applications using vulnerable FFmpeg builds and, under specific conditions, be developed into remote code execution. The issue affects FFmpeg versions before 8.1.2.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can cause denial of service by crashing any application or service that processes the malicious media file through the vulnerable MagicYUV decoder. In some environments, the heap corruption can be leveraged for arbitrary code execution in the security context of the affected process, as demonstrated in research against media-processing workflows such as Jellyfin and Nextcloud preview generation. Impact therefore ranges from application instability and service interruption to full compromise of media servers or desktop applications that automatically decode attacker-supplied video content.

Mitigation

If you can’t patch tonight, do this now.

If immediate patching is not possible, disable or remove the MagicYUV decoder from FFmpeg builds where feasible, and reduce or eliminate automatic processing of untrusted video files for thumbnails, previews, metadata extraction, and library scanning. Restrict upload and ingestion paths for attacker-controlled AVI, MKV, and MOV files, especially in media servers and preview-generation services. Minimize privileges of services invoking FFmpeg so that compromise yields limited access. Monitor for abnormal crashes, failed thumbnail generation, or repeated media-processing faults as possible indicators of exploitation attempts.

Remediation

Patch, then assume compromise.

Upgrade FFmpeg to version 8.1.2 or later, or to vendor-fixed downstream package versions. Ensure bundled or embedded FFmpeg copies in dependent products and containers are also updated, not just the system package. Where distribution advisories apply, install the vendor-provided fixed ffmpeg packages. If maintaining a custom build, apply the upstream MagicYUV fix or equivalent bounds-check patch to reject malformed slice_height values that trigger the overflow.
PUBLIC EXPLOITS

Exploits

3 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos (1 hidden).

VALID 3 / 4 TOTALView more in app
CVE-2026-8461MaturityPoCVerified exploit

Repository contains a single Python exploit generator and a README. The main file, CVE-2026-8461.py, is a standalone Python 3 proof-of-concept/operational exploit builder for a claimed FFmpeg MagicYUV decoder out-of-bounds write vulnerability (CVE-2026-8461, 'PixelSmash'). The script constructs a minimal MagicYUV frame inside an AVI container, deliberately using SLICE_HEIGHT=31 and crafted chroma-plane data to trigger an out-of-bounds write during decoding. Its exploitation strategy is more than a crash PoC: it embeds an attacker-supplied shell command into a heap-shaped payload, preserves optional glibc metadata, and overwrites fields resembling an AVBuffer structure so that a function pointer/free callback is replaced with system() and the opaque pointer references the command buffer. The script supports target-specific calibration through a JSON file or direct CLI parameters for system() and command heap addresses, indicating an attempt at practical RCE under controlled conditions. Repository structure is minimal: README.md documents the vulnerability, impact, affected software, and mitigation; CVE-2026-8461.py is the only code file and clear entry point. No network communication, C2, or remote endpoints are present in the code; delivery is via a malicious media file, making the primary attack vector file-based against applications or services that automatically decode MagicYUV/FFmpeg content.

0xBlackashDisclosed Jun 26, 2026pythonmarkdownfile
CVE-2026-8461-EXPMaturityPoCVerified exploit

Repository contains a working Python-based exploit PoC for CVE-2026-8461 ('PixelSmash'), a heap out-of-bounds write in FFmpeg's MagicYUV decoder. The repo structure is straightforward: two detailed analysis documents (English and Chinese), a README with usage instructions, and three Python scripts comprising the exploit workflow. `exploit_cve_2026_8461.py` is the main payload generator that crafts a malicious AVI with MagicYUV frame geometry chosen to force a 640-byte OOB write from the Cb plane on the final slice. It uses inverse left-prediction encoding so the decoded bytes in heap memory become attacker-chosen values, then overwrites AVBuffer fields to redirect `free` to `system()` and point `opaque` at an embedded shell command string. `auto_calibrate.py` supports debug-symbol FFmpeg builds by driving GDB with source breakpoints at `magicyuv.c:291`, dumping heap-adjacent memory, locating AVBuffer structures, and extracting the `system()` address. `auto_calibrate_nosym.py` performs similar calibration for stripped dynamically linked builds by breaking on exported `av_buffer_create`, identifying Cb/Cr allocations, setting a hardware watchpoint on the expected OOB start, and reconstructing heap metadata from the dump. The exploit is not framework-based and is more than a detector: it is an operational PoC with a hardcoded exploitation strategy and customizable shell-command payload. Primary attack vector is file-based delivery of a crafted AVI to any application that fully decodes MagicYUV content via vulnerable FFmpeg/libavcodec. The README explicitly notes that probe-only paths such as `ffprobe` or `ffmpeg -i file` without output do not trigger the final execution path. Practical exploitation is constrained: tested on x86_64, depends on glibc heap layout, requires ASLR disabled, and calibration is specific to binary build, libc version, and even AVI path length. Notable fingerprintable artifacts include `/tmp/exploit.avi`, `calibration.json`, `/tmp/pwned`, the vulnerable source path `libavcodec/magicyuv.c`, and an example reverse-shell callback target `10.0.0.1:4444` embedded only as sample payload text.

Y5neKODisclosed Jun 24, 2026pythonmarkdownfilelocal
CVE-2026-8461-PoCMaturityPoCVerified exploit

Repository contains a README and a single Python exploit generator, exploit_cve_2026_8461.py. The script is not a scanner or detector; it builds crafted AVI files intended to exploit CVE-2026-8461 in FFmpeg's MagicYUV decoder. The stated exploit chain is a heap out-of-bounds write leading to corruption of an adjacent AVBuffer structure, overwriting its free callback with system() and arranging a heap-resident command string so cleanup triggers arbitrary command execution. The code structure includes helper packing/unpacking routines, left-prediction encode/decode logic to shape pixel bytes into desired post-decode memory contents, a TargetCalibration dataclass for target-specific offsets and addresses, frame-building logic for malicious MagicYUV content, AVI container construction, calibration support, and a CLI main() routine. The exploit supports two modes: a baseline crash/OOB mode and a calibrated RCE mode. The baseline mode generates a file expected to crash or corrupt memory on vulnerable FFmpeg. The RCE mode requires explicit parameters such as system() address, heap command address, AVBuffer offset, and optionally calibration JSON/glibc metadata. Operationally, the exploit is file-based: the attacker delivers a malicious AVI and waits for a local ffmpeg process to decode it. The script assumes a narrow target environment: ASLR disabled, glibc malloc allocator, calibrated heap layout, and a vulnerable unpatched FFmpeg build. Because the payload is an attacker-provided shell command but relies on hardcoded addresses and manual calibration rather than a reusable framework, the maturity is best classified as OPERATIONAL rather than WEAPONIZED.

anyanythingDisclosed Jun 23, 2026pythonmarkdownfilelocal
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
FfmpegFfmpegapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

ACTIVITY FEED

Recent activity

67 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity57

Community discussion across Reddit, Mastodon, and other social sources.