From 8b16e1ddd9c0bc4ca90447d481186216cfdce0fe 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 --- libavformat/mov.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index ccaa988e4b..8f1c5df3c9 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1407,7 +1407,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; // required by external tools ff_data_to_hex(checksum_string, file_checksum, sizeof(file_checksum), 1);