From 5d3aab64a4d136ff015fcefdf162afac486a8105 Mon Sep 17 00:00:00 2001 From: happyworker <208suo@208suo.com> Date: Tue, 2 Jul 2024 15:37:43 +0800 Subject: [PATCH 1/2] Fix CVE-2021-38171 --- CVE-2021-38171.patch | 30 ++++++++++++++++++++++++++++++ ffmpeg.spec | 6 +++++- 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 CVE-2021-38171.patch diff --git a/CVE-2021-38171.patch b/CVE-2021-38171.patch new file mode 100644 index 0000000..49a9720 --- /dev/null +++ b/CVE-2021-38171.patch @@ -0,0 +1,30 @@ +From 41ee973034e8dba9f404ff9a609bba912b213db2 Mon Sep 17 00:00:00 2001 +From: maryam ebrahimzadeh +Date: Tue, 2 Jul 2024 15:28:58 +0800 +Subject: [PATCH] CVE-2021-38171 + +--- + libavformat/adtsenc.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/libavformat/adtsenc.c b/libavformat/adtsenc.c +index 3c2840c..3807d67 100644 +--- a/libavformat/adtsenc.c ++++ b/libavformat/adtsenc.c +@@ -50,9 +50,11 @@ static int adts_decode_extradata(AVFormatContext *s, ADTSContext *adts, const ui + GetBitContext gb; + PutBitContext pb; + MPEG4AudioConfig m4ac; +- int off; ++ int off, ret; + +- init_get_bits(&gb, buf, size * 8); ++ ret = init_get_bits8(&gb, buf, size); ++ if (ret < 0) ++ return ret; + off = avpriv_mpeg4audio_get_config(&m4ac, buf, size * 8, 1); + if (off < 0) + return off; +-- +2.43.0 + diff --git a/ffmpeg.spec b/ffmpeg.spec index 5c28d1f..f277d8c 100644 --- a/ffmpeg.spec +++ b/ffmpeg.spec @@ -61,7 +61,7 @@ ExclusiveArch: armv7hnl Summary: Digital VCR and streaming server Name: ffmpeg%{?flavor} Version: 4.2.4 -Release: 11 +Release: 12 License: %{ffmpeg_license} URL: http://ffmpeg.org/ %if 0%{?date} @@ -82,6 +82,7 @@ Patch9: CVE-2022-3341.patch Patch10: CVE-2022-3109.patch Patch11: fix-CVE-2023-51793.patch Patch12: fix-CVE-2023-50010.patch +Patch13: CVE-2021-38171.patch Requires: %{name}-libs%{?_isa} = %{version}-%{release} %{?_with_cuda:BuildRequires: cuda-minimal-build-%{_cuda_version_rpm} cuda-drivers-devel} %{?_with_libnpp:BuildRequires: pkgconfig(nppc-%{_cuda_version})} @@ -414,6 +415,9 @@ install -pm755 tools/qt-faststart %{buildroot}%{_bindir} %changelog +* Tue Jul 2 2024 happyworker <208suo@208suo.com> - 4.2.4-12 +- Fix CVE-2021-38171 + * Tue Jul 02 2024 happyworker <208suo@208suo.com> - 4.2.4-11 - Fix CVE-2023-50010 From 630ebad965a792c780d5d9d39ccf6f0ad7128cbb Mon Sep 17 00:00:00 2001 From: happyworker <208suo@208suo.com> Date: Tue, 2 Jul 2024 17:23:52 +0800 Subject: [PATCH 2/2] Fix CVE-2022-1475 --- CVE-2022-1475.patch | 26 ++++++++++++++++++++++++++ ffmpeg.spec | 6 +++++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 CVE-2022-1475.patch diff --git a/CVE-2022-1475.patch b/CVE-2022-1475.patch new file mode 100644 index 0000000..ce01947 --- /dev/null +++ b/CVE-2022-1475.patch @@ -0,0 +1,26 @@ +From 0fa2535254c3e45b83f3a915f91b315f6d89879d Mon Sep 17 00:00:00 2001 +From: Michael Niedermayer +Date: Tue, 2 Jul 2024 17:15:31 +0800 +Subject: [PATCH] CVE-2022-1475 + +--- + ffmpeg-4.2.4/libavcodec/g729_parser.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/ffmpeg-4.2.4/libavcodec/g729_parser.c b/ffmpeg-4.2.4/libavcodec/g729_parser.c +index fc00235..3ede92d 100644 +--- a/ffmpeg-4.2.4/libavcodec/g729_parser.c ++++ b/ffmpeg-4.2.4/libavcodec/g729_parser.c +@@ -48,6 +48,9 @@ static int g729_parse(AVCodecParserContext *s1, AVCodecContext *avctx, + av_assert1(avctx->codec_id == AV_CODEC_ID_G729); + /* FIXME: replace this heuristic block_size with more precise estimate */ + s->block_size = (avctx->bit_rate < 8000) ? G729D_6K4_BLOCK_SIZE : G729_8K_BLOCK_SIZE; ++ // channels > 2 is invalid, we pass the packet on unchanged ++ if (avctx->channels > 2) ++ s->block_size = 0; + s->block_size *= avctx->channels; + s->duration = avctx->frame_size; + } +-- +2.43.0 + diff --git a/ffmpeg.spec b/ffmpeg.spec index f277d8c..92883cb 100644 --- a/ffmpeg.spec +++ b/ffmpeg.spec @@ -61,7 +61,7 @@ ExclusiveArch: armv7hnl Summary: Digital VCR and streaming server Name: ffmpeg%{?flavor} Version: 4.2.4 -Release: 12 +Release: 13 License: %{ffmpeg_license} URL: http://ffmpeg.org/ %if 0%{?date} @@ -83,6 +83,7 @@ Patch10: CVE-2022-3109.patch Patch11: fix-CVE-2023-51793.patch Patch12: fix-CVE-2023-50010.patch Patch13: CVE-2021-38171.patch +Patch14: CVE-2022-1475.patch Requires: %{name}-libs%{?_isa} = %{version}-%{release} %{?_with_cuda:BuildRequires: cuda-minimal-build-%{_cuda_version_rpm} cuda-drivers-devel} %{?_with_libnpp:BuildRequires: pkgconfig(nppc-%{_cuda_version})} @@ -415,6 +416,9 @@ install -pm755 tools/qt-faststart %{buildroot}%{_bindir} %changelog +* Tue Jul 2 2024 happyworker <208suo@208suo.com> - 4.2.4-13 +- Fix CVE-2022-1475 + * Tue Jul 2 2024 happyworker <208suo@208suo.com> - 4.2.4-12 - Fix CVE-2021-38171