diff mbox series

[FFmpeg-devel,1/3] avcodec/evc_ps: Check chroma_format_idc

Message ID 20231012232759.5352-1-michael@niedermayer.cc
State Accepted
Commit ef3b42738b8081982498f5fb6b24593996045777
Headers show
Series [FFmpeg-devel,1/3] avcodec/evc_ps: Check chroma_format_idc | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Michael Niedermayer Oct. 12, 2023, 11:27 p.m. UTC
Fixes: out of array access
Fixes: 62678/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-4858264984354816

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
---
 libavcodec/evc_ps.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Kieran Kunhya Oct. 13, 2023, 12:18 a.m. UTC | #1
On Fri, 13 Oct 2023 at 00:28, Michael Niedermayer <michael@niedermayer.cc>
wrote:

> Fixes: out of array access
> Fixes:
> 62678/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-4858264984354816
>
> Found-by: continuous fuzzing process
> https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
> Signed-off-by
> <https://github.com/google/oss-fuzz/tree/master/projects/ffmpegSigned-off-by>:
> Michael Niedermayer <michael@niedermayer.cc>
> ---
>  libavcodec/evc_ps.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/libavcodec/evc_ps.c b/libavcodec/evc_ps.c
> index c11b92d1c5..19895d404d 100644
> --- a/libavcodec/evc_ps.c
> +++ b/libavcodec/evc_ps.c
> @@ -179,6 +179,10 @@ int ff_evc_parse_sps(GetBitContext *gb, EVCParamSets
> *ps)
>      // 2 - 4:2:2
>      // 3 - 4:4:4
>      sps->chroma_format_idc = get_ue_golomb_31(gb);
> +    if (sps->chroma_format_idc > 3) {
> +        ret = AVERROR_INVALIDDATA;
> +        goto fail;
> +    }
>
>      sps->pic_width_in_luma_samples = get_ue_golomb_long(gb);
>      sps->pic_height_in_luma_samples = get_ue_golomb_long(gb);
> --
> 2.17.1
>

ok
Michael Niedermayer Oct. 15, 2023, 10:56 p.m. UTC | #2
On Fri, Oct 13, 2023 at 01:18:27AM +0100, Kieran Kunhya wrote:
> On Fri, 13 Oct 2023 at 00:28, Michael Niedermayer <michael@niedermayer.cc>
> wrote:
> 
> > Fixes: out of array access
> > Fixes:
> > 62678/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-4858264984354816
> >
> > Found-by: continuous fuzzing process
> > https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
> > Signed-off-by
> > <https://github.com/google/oss-fuzz/tree/master/projects/ffmpegSigned-off-by>:
> > Michael Niedermayer <michael@niedermayer.cc>
> > ---
> >  libavcodec/evc_ps.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/libavcodec/evc_ps.c b/libavcodec/evc_ps.c
> > index c11b92d1c5..19895d404d 100644
> > --- a/libavcodec/evc_ps.c
> > +++ b/libavcodec/evc_ps.c
> > @@ -179,6 +179,10 @@ int ff_evc_parse_sps(GetBitContext *gb, EVCParamSets
> > *ps)
> >      // 2 - 4:2:2
> >      // 3 - 4:4:4
> >      sps->chroma_format_idc = get_ue_golomb_31(gb);
> > +    if (sps->chroma_format_idc > 3) {
> > +        ret = AVERROR_INVALIDDATA;
> > +        goto fail;
> > +    }
> >
> >      sps->pic_width_in_luma_samples = get_ue_golomb_long(gb);
> >      sps->pic_height_in_luma_samples = get_ue_golomb_long(gb);
> > --
> > 2.17.1
> >
> 
> ok

will apply

thx

[...]
diff mbox series

Patch

diff --git a/libavcodec/evc_ps.c b/libavcodec/evc_ps.c
index c11b92d1c5..19895d404d 100644
--- a/libavcodec/evc_ps.c
+++ b/libavcodec/evc_ps.c
@@ -179,6 +179,10 @@  int ff_evc_parse_sps(GetBitContext *gb, EVCParamSets *ps)
     // 2 - 4:2:2
     // 3 - 4:4:4
     sps->chroma_format_idc = get_ue_golomb_31(gb);
+    if (sps->chroma_format_idc > 3) {
+        ret = AVERROR_INVALIDDATA;
+        goto fail;
+    }
 
     sps->pic_width_in_luma_samples = get_ue_golomb_long(gb);
     sps->pic_height_in_luma_samples = get_ue_golomb_long(gb);