[FFmpeg-devel] [PATCH 1/2] avformat/mov: Check extradata in mov_read_iacb()

James Almer jamrial at gmail.com
Fri Jul 19 01:19:17 EEST 2024


On 7/18/2024 7:16 PM, Michael Niedermayer wrote:
> Fixes: MemLeak
> Fixes: 69853/clusterfuzz-testcase-minimized-ffmpeg_dem_MOV_fuzzer-4660448545275904
> 
> Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
>   libavformat/mov.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/libavformat/mov.c b/libavformat/mov.c
> index ce95842ce58..82fce7ef5c1 100644
> --- a/libavformat/mov.c
> +++ b/libavformat/mov.c
> @@ -897,6 +897,8 @@ static int mov_read_iacb(MOVContext *c, AVIOContext *pb, MOVAtom atom)
>   
>       st = c->fc->streams[c->fc->nb_streams - 1];
>       sc = st->priv_data;
> +    if (st->codecpar->extradata)
> +        return AVERROR_INVALIDDATA;

Maybe it's better to do like other atoms where we ignore duplicate 
entries (See mov_read_glbl(), used for h264/hevc/etc).

>   
>       sc->iamf = av_mallocz(sizeof(*sc->iamf));
>       if (!sc->iamf)


More information about the ffmpeg-devel mailing list