[FFmpeg-devel] [PATCH 2/3] avcodec/pngdec: Check that previous_picture has same w/h/format

Paul B Mahol onemda at gmail.com
Fri Jul 12 11:30:26 EEST 2019


On 7/11/19, Michael Niedermayer <michael at niedermayer.cc> wrote:
> Fixes: out of array access
> Fixes:
> 15540/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_APNG_fuzzer-5684905029140480
>
> Found-by: continuous fuzzing process
> https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
> Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> ---
>  libavcodec/pngdec.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
> index 5209e342db..bf5a5191cc 100644
> --- a/libavcodec/pngdec.c
> +++ b/libavcodec/pngdec.c
> @@ -1391,6 +1391,9 @@ exit_loop:
>              if (CONFIG_PNG_DECODER && avctx->codec_id != AV_CODEC_ID_APNG)
>                  handle_p_frame_png(s, p);
>              else if (CONFIG_APNG_DECODER &&
> +                     s->previous_picture.f->width == p->width  &&
> +                     s->previous_picture.f->height== p->height &&
> +                     s->previous_picture.f->format== p->format &&
>                       avctx->codec_id == AV_CODEC_ID_APNG &&
>                       (ret = handle_p_frame_apng(avctx, s, p)) < 0)
>                  goto fail;
> --
> 2.22.0

Probably OK


More information about the ffmpeg-devel mailing list