avformat/mov: creation time should be non negative

Fixes: signed integer overflow: -9223372036854775808 - 2082844800 cannot be represented in type 'long'
Fixes: 58384/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-6428383700713472

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2023-05-25 22:22:55 +02:00
parent 6018f87599
commit 0c78b0dd3b
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64
1 changed files with 4 additions and 0 deletions

View File

@ -1521,6 +1521,10 @@ static void mov_metadata_creation_time(MOVContext *c, AVIOContext *pb, AVDiction
if (version == 1) {
time = avio_rb64(pb);
avio_rb64(pb);
if (time < 0) {
av_log(c->fc, AV_LOG_DEBUG, "creation_time is negative\n");
return;
}
} else {
time = avio_rb32(pb);
avio_rb32(pb); /* modification time */