ANT-2026-N0ZPQQQ6 · ffmpeg/ffmpeg
heap-buffer-overflow high
Severity Claude high · Security research firm high · Maintainer -
Discovered by Claude Mythos Preview
Anthropic's analysis, sealed at approval. Disclosure to the maintainer was performed by Ada Logics.
ANT-2026-N0ZPQQQ6: The ASAN report describes a real, plausible heap-buffer-overflow in ffmpeg's fastaudio decoder at line 171 of fastaudio.c.
A fuzzed input to FFmpeg's FastAudio codec (ffmpeg_AV_CODEC_ID_FASTAUDIO_fuzzer) triggers a heap-buffer-overflow on a WRITE operation at fastaudio.c:171. The decoder writes past the bounds of a heap allocation while processing attacker-controlled audio packet data. Because FFmpeg decoders operate on untrusted media input, an attacker who can supply a crafted FastAudio stream to any application linking libavcodec can reach this path. The out-of-bounds write corrupts heap memory and may be leveraged for further exploitation.
Target
Project: ffmpeg
Location: fastaudio.c:171
Technical Details
ASAN reports a heap-buffer-overflow WRITE at fastaudio.c:171 in the FastAudio decoder. The decoder writes decoded samples beyond the end of a heap-allocated buffer, indicating a missing or incorrect bounds check on the output/index computation relative to the allocated size.
Crash signature: ASAN heap-buffer-overflow WRITE at fastaudio.c:171 (AV_CODEC_ID_FASTAUDIO)
Reproduction
- Craft a malformed FastAudio bitstream that drives the decode loop past the output buffer bounds
- Wrap it in a container (or raw packet) that routes to AV_CODEC_ID_FASTAUDIO
- Deliver the file/stream to the target so libavcodec decodes it
- Out-of-bounds heap write occurs at fastaudio.c:171
[No reproducer or sanitizer output attached — request from security-cvd@anthropic.com if needed.]
Acknowledgement
This vulnerability was discovered by Claude, Anthropic's AI assistant, and triaged by the Anthropic security team in collaboration with Anthropic Research. Please direct questions to security-cvd@anthropic.com and reference ANT-2026-N0ZPQQQ6.
Reference: ANT-2026-N0ZPQQQ6
Anthropic CVD Policy: https://www.anthropic.com/coordinated-vulnerability-disclosure
Triage and disclosure were performed by Ada Logics.
- Verdict
- true positive
- Severity
- high
The change that resolved this finding.
diff --git a/libavcodec/fastaudio.c b/libavcodec/fastaudio.c
index d361b410b9ecc..bab3cb738b921 100644
--- a/libavcodec/fastaudio.c
+++ b/libavcodec/fastaudio.c
@@ -113,6 +113,8 @@ static int fastaudio_decode(AVCodecContext *avctx, AVFrame *frame,
int ret;
subframes = pkt->size / (40 * avctx->ch_layout.nb_channels);
+ if (subframes <= 0 || subframes > INT_MAX / 256)
+ return AVERROR_INVALIDDATA;
frame->nb_samples = subframes * 256;
if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
return ret;https://github.com/FFmpeg/FFmpeg/commit/1e9984772b6ef878d3ae4a58e01d6a6d63a61bd7
Dates from discovery through public reveal.
- 2026-03-26 Reported to tracker
- 2026-05-28 Sent to maintainer
- 2026-06-03 Maintainer acknowledged
- 2026-06-05 Patch released
- 2026-08-17 Publicly revealed
SHA-3-512 hash:
cb1bed514d82d5b20d7bee3807f6f890cd332e425a6e1e136b2f2dec0e50b908c22eb33d799560978daa374ec4a7b1f07c316cebcb7693a6006f0ee5a8a5bbb6
Committed 2026-05-28 08:01 PT
Revealed 2026-08-17 16:06 PT
Verify (download preimage.json)
Show preimage JSON
{
"ant_id": "ANT-2026-N0ZPQQQ6",
"bug_class": "heap-buffer-overflow",
"claude_severity": "high",
"commit_sha": null,
"created_at": "2026-03-27T01:45:40+00:00",
"description": "A fuzzed input to FFmpeg's FastAudio codec (ffmpeg_AV_CODEC_ID_FASTAUDIO_fuzzer) triggers a heap-buffer-overflow on a WRITE operation at fastaudio.c:171. The decoder writes past the bounds of a heap allocation while processing attacker-controlled audio packet data. Because FFmpeg decoders operate on untrusted media input, an attacker who can supply a crafted FastAudio stream to any application linking libavcodec can reach this path. The out-of-bounds write corrupts heap memory and may be leveraged for further exploitation.",
"discovered_at": null,
"location": "fastaudio.c:171",
"poc_sha256": null,
"preimage_version": 1,
"project": "ffmpeg",
"reproduction": [
"1. Craft a malformed FastAudio bitstream that drives the decode loop past the output buffer bounds",
"2. Wrap it in a container (or raw packet) that routes to AV_CODEC_ID_FASTAUDIO",
"3. Deliver the file/stream to the target so libavcodec decodes it",
"4. Out-of-bounds heap write occurs at fastaudio.c:171"
],
"technical_details": "ASAN reports a heap-buffer-overflow WRITE at fastaudio.c:171 in the FastAudio decoder. The decoder writes decoded samples beyond the end of a heap-allocated buffer, indicating a missing or incorrect bounds check on the output/index computation relative to the allocated size.",
"title": "The ASAN report describes a real, plausible heap-buffer-overflow in ffmpeg's fastaudio decoder at line 171 of fastaudio.c.",
"vendor_severity": "high"
}