From e3d695473d95fe8e23df6a5dadb1a802854471da Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 23 Jul 2025 13:16:33 +0200 Subject: [PATCH] avformat/mov: make sure file_checksum is fully initialized Fixes: use of uninitialized memory Fixes: 394990189/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-6431722199908352 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer (cherry picked from commit 8b16e1ddd9c0bc4ca90447d481186216cfdce0fe) Signed-off-by: Michael Niedermayer --- libavformat/mov.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index b03a8f8295..414e7fa7c0 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1018,7 +1018,9 @@ static int mov_read_adrm(MOVContext *c, AVIOContext *pb, MOVAtom atom) avio_read(pb, output, 8); // go to offset 8, absolute position 0x251 avio_read(pb, input, DRM_BLOB_SIZE); avio_read(pb, output, 4); // go to offset 4, absolute position 0x28d - avio_read(pb, file_checksum, 20); + ret = ffio_read_size(pb, file_checksum, 20); + if (ret < 0) + goto fail; av_log(c->fc, AV_LOG_INFO, "[aax] file checksum == "); // required by external tools for (i = 0; i < 20; i++)