[FFmpeg-devel] [PATCH] avcodec/agm: Check frame dimensions

Paul B Mahol onemda at gmail.com
Thu Apr 11 11:21:49 EEST 2019


On 4/11/19, Michael Niedermayer <michael at niedermayer.cc> wrote:
> Fixes: out of array access
> Fixes:
> 14110/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_AGM_fuzzer-5649184864075776
>
> 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/agm.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/libavcodec/agm.c b/libavcodec/agm.c
> index cbd45e8095..b538854613 100644
> --- a/libavcodec/agm.c
> +++ b/libavcodec/agm.c
> @@ -578,6 +578,9 @@ static int decode_frame(AVCodecContext *avctx, void
> *data,
>              av_log(avctx, AV_LOG_ERROR, "Missing reference frame.\n");
>              return AVERROR_INVALIDDATA;
>          }
> +        if (s->prev_frame-> width != frame->width ||
> +            s->prev_frame->height != frame->height)
> +            return AVERROR_INVALIDDATA;
>
>          if (!(s->flags & 2)) {
>              ret = av_frame_copy(frame, s->prev_frame);

LGTM


More information about the ffmpeg-devel mailing list