From 5554ae5ca96d44266197afd283cf247fa212179c Mon Sep 17 00:00:00 2001 From: xh Date: Thu, 11 Jul 2024 06:09:05 +0000 Subject: [PATCH] fix CVE-2023-39328 --- backport-CVE-2023-39328.patch | 32 ++++++++++++++++++++++++++++++++ openjpeg2.spec | 9 ++++++++- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 backport-CVE-2023-39328.patch diff --git a/backport-CVE-2023-39328.patch b/backport-CVE-2023-39328.patch new file mode 100644 index 0000000..28ba44e --- /dev/null +++ b/backport-CVE-2023-39328.patch @@ -0,0 +1,32 @@ +From b287b27a87ecfbbd3b1206b17269d19e76a1b467 Mon Sep 17 00:00:00 2001 +From: pic4xiu <40382944+pic4xiu@users.noreply.github.com> +Date: Thu, 29 Jun 2023 19:50:47 +0800 +Subject: [PATCH] Update opj_malloc.c + +Conflict: NA +Reference: https://github.com/uclouvain/openjpeg/commit/b287b27a87ecfbbd3b1206b17269d19e76a1b467 +--- + src/lib/openjp2/opj_malloc.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/src/lib/openjp2/opj_malloc.c b/src/lib/openjp2/opj_malloc.c +index dca91bfcb..6242614f9 100644 +--- a/src/lib/openjp2/opj_malloc.c ++++ b/src/lib/openjp2/opj_malloc.c +@@ -197,6 +197,16 @@ void * opj_malloc(size_t size) + } + void * opj_calloc(size_t num, size_t size) + { ++ static unsigned long long allocated_size = 0; ++ static unsigned long long max_allocated_size = 4ULL * 1024 * 1024 * 1024; ++ /*Restrict this function can only malloc 4GB of memory*/ ++ ++ unsigned long long total_size = (unsigned long long)(num * size); ++ allocated_size += total_size; ++ if (allocated_size > max_allocated_size) { ++ /*Prevent excessive resource allocation*/ ++ return NULL; ++ } + if (num == 0 || size == 0) { + /* prevent implementation defined behavior of realloc */ + return NULL; diff --git a/openjpeg2.spec b/openjpeg2.spec index f2b41af..8cca648 100644 --- a/openjpeg2.spec +++ b/openjpeg2.spec @@ -1,6 +1,6 @@ Name: openjpeg2 Version: 2.3.1 -Release: 11 +Release: 12 Summary: C-Library for JPEG 2000 License: BSD and MIT URL: https://github.com/uclouvain/openjpeg @@ -26,6 +26,7 @@ Patch6014: backport-0001-CVE-2019-12973.patch Patch6015: backport-0002-CVE-2019-12973.patch Patch6016: backport-CVE-2021-3575.patch Patch6017: backport-CVE-2022-1122.patch +Patch6018: backport-CVE-2023-39328.patch BuildRequires: cmake gcc-c++ make zlib-devel libpng-devel libtiff-devel lcms2-devel doxygen @@ -102,6 +103,12 @@ mv %{buildroot}%{_mandir}/man1/opj_dump.1 %{buildroot}%{_mandir}/man1/opj2_dump. %{_mandir}/man3/*.3* %changelog +* Thu Jul 11 2024 xinghe - 2.3.1-12 +- Type:cves +- ID:CVE-2023-39328 +- SUG:NA +- DESC:fix CVE-2023-39328 + * Mon May 16 2022 dongyuzhen - 2.3.1-11 - fix CVE-2022-1122 -- Gitee