mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-12 18:25:03 +00:00
avformat/cinedec: Fix DoS due to lack of eof check
Fixes: loop.cine
Found-by: Xiaohei and Wangchu from Alibaba Security Team
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 7e80b63ecd
)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
e7dc286b16
commit
983f90ef18
@ -267,8 +267,12 @@ static int cine_read_header(AVFormatContext *avctx)
|
|||||||
|
|
||||||
/* parse image offsets */
|
/* parse image offsets */
|
||||||
avio_seek(pb, offImageOffsets, SEEK_SET);
|
avio_seek(pb, offImageOffsets, SEEK_SET);
|
||||||
for (i = 0; i < st->duration; i++)
|
for (i = 0; i < st->duration; i++) {
|
||||||
|
if (avio_feof(pb))
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
|
||||||
av_add_index_entry(st, avio_rl64(pb), i, 0, 0, AVINDEX_KEYFRAME);
|
av_add_index_entry(st, avio_rl64(pb), i, 0, 0, AVINDEX_KEYFRAME);
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user