fix CVE-2022-22844
This commit is contained in:
parent
a5ce09137c
commit
ada64a84e7
42
backport-0001-CVE-2022-22844.patch
Normal file
42
backport-0001-CVE-2022-22844.patch
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
From 49b81e99704bd199a24ccce65f974cc2d78cccc4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: 4ugustus <wangdw.augustus@qq.com>
|
||||||
|
Date: Tue, 4 Jan 2022 11:01:37 +0000
|
||||||
|
Subject: [PATCH] fixing global-buffer-overflow in tiffset
|
||||||
|
|
||||||
|
Conflict:NA
|
||||||
|
Reference:https://gitlab.com/libtiff/libtiff/-/commit/49b81e99704bd199a24ccce65f974cc2d78cccc4
|
||||||
|
|
||||||
|
---
|
||||||
|
tools/tiffset.c | 16 +++++++++++++---
|
||||||
|
1 file changed, 13 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tools/tiffset.c b/tools/tiffset.c
|
||||||
|
index 8c9e23c..b7badd9 100644
|
||||||
|
--- a/tools/tiffset.c
|
||||||
|
+++ b/tools/tiffset.c
|
||||||
|
@@ -146,9 +146,19 @@ main(int argc, char* argv[])
|
||||||
|
|
||||||
|
arg_index++;
|
||||||
|
if (TIFFFieldDataType(fip) == TIFF_ASCII) {
|
||||||
|
- if (TIFFSetField(tiff, TIFFFieldTag(fip), argv[arg_index]) != 1)
|
||||||
|
- fprintf( stderr, "Failed to set %s=%s\n",
|
||||||
|
- TIFFFieldName(fip), argv[arg_index] );
|
||||||
|
+ if(TIFFFieldPassCount( fip )) {
|
||||||
|
+ size_t len;
|
||||||
|
+ len = (uint32_t)(strlen(argv[arg_index] + 1));
|
||||||
|
+ if (TIFFSetField(tiff, TIFFFieldTag(fip),
|
||||||
|
+ (uint16_t)len, argv[arg_index]) != 1)
|
||||||
|
+ fprintf( stderr, "Failed to set %s=%s",
|
||||||
|
+ TIFFFieldName(fip), argv[arg_index] );
|
||||||
|
+ } else {
|
||||||
|
+ if (TIFFSetField(tiff, TIFFFieldTag(fip),
|
||||||
|
+ argv[arg_index]) != 1)
|
||||||
|
+ fprintf( stderr, "Failed to set %s=%s",
|
||||||
|
+ TIFFFieldName(fip), argv[arg_index] );
|
||||||
|
+ }
|
||||||
|
} else if (TIFFFieldWriteCount(fip) > 0
|
||||||
|
|| TIFFFieldWriteCount(fip) == TIFF_VARIABLE) {
|
||||||
|
int ret = 1;
|
||||||
|
--
|
||||||
|
2.33.0
|
||||||
|
|
||||||
39
backport-0002-CVE-2022-22844.patch
Normal file
39
backport-0002-CVE-2022-22844.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
From 0cf67888e32e36b45828dd467920684c93f2b22d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Timothy Lyanguzov <theta682@gmail.com>
|
||||||
|
Date: Tue, 25 Jan 2022 04:27:28 +0000
|
||||||
|
Subject: [PATCH] Apply 4 suggestion(s) to 1 file(s)
|
||||||
|
|
||||||
|
Conflict:NA
|
||||||
|
Reference:https://gitlab.com/libtiff/libtiff/-/commit/0cf67888e32e36b45828dd467920684c93f2b22d
|
||||||
|
|
||||||
|
---
|
||||||
|
tools/tiffset.c | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tools/tiffset.c b/tools/tiffset.c
|
||||||
|
index b7badd9..b8b52c0 100644
|
||||||
|
--- a/tools/tiffset.c
|
||||||
|
+++ b/tools/tiffset.c
|
||||||
|
@@ -148,15 +148,15 @@ main(int argc, char* argv[])
|
||||||
|
if (TIFFFieldDataType(fip) == TIFF_ASCII) {
|
||||||
|
if(TIFFFieldPassCount( fip )) {
|
||||||
|
size_t len;
|
||||||
|
- len = (uint32_t)(strlen(argv[arg_index] + 1));
|
||||||
|
- if (TIFFSetField(tiff, TIFFFieldTag(fip),
|
||||||
|
+ len = strlen(argv[arg_index] + 1);
|
||||||
|
+ if (len > UINT16_MAX || TIFFSetField(tiff, TIFFFieldTag(fip),
|
||||||
|
(uint16_t)len, argv[arg_index]) != 1)
|
||||||
|
- fprintf( stderr, "Failed to set %s=%s",
|
||||||
|
+ fprintf( stderr, "Failed to set %s=%s\n",
|
||||||
|
TIFFFieldName(fip), argv[arg_index] );
|
||||||
|
} else {
|
||||||
|
if (TIFFSetField(tiff, TIFFFieldTag(fip),
|
||||||
|
argv[arg_index]) != 1)
|
||||||
|
- fprintf( stderr, "Failed to set %s=%s",
|
||||||
|
+ fprintf( stderr, "Failed to set %s=%s\n",
|
||||||
|
TIFFFieldName(fip), argv[arg_index] );
|
||||||
|
}
|
||||||
|
} else if (TIFFFieldWriteCount(fip) > 0
|
||||||
|
--
|
||||||
|
2.33.0
|
||||||
|
|
||||||
28
backport-0003-CVE-2022-22844.patch
Normal file
28
backport-0003-CVE-2022-22844.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
From 0a827a985f891d6df481a6f581c723640fad7874 Mon Sep 17 00:00:00 2001
|
||||||
|
From: 4ugustus <wangdw.augustus@qq.com>
|
||||||
|
Date: Tue, 25 Jan 2022 04:30:38 +0000
|
||||||
|
Subject: [PATCH] fix a small typo in strlen
|
||||||
|
|
||||||
|
Conflict:NA
|
||||||
|
Reference:https://gitlab.com/libtiff/libtiff/-/commit/0a827a985f891d6df481a6f581c723640fad7874
|
||||||
|
|
||||||
|
---
|
||||||
|
tools/tiffset.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tools/tiffset.c b/tools/tiffset.c
|
||||||
|
index b8b52c0..e7a88c0 100644
|
||||||
|
--- a/tools/tiffset.c
|
||||||
|
+++ b/tools/tiffset.c
|
||||||
|
@@ -148,7 +148,7 @@ main(int argc, char* argv[])
|
||||||
|
if (TIFFFieldDataType(fip) == TIFF_ASCII) {
|
||||||
|
if(TIFFFieldPassCount( fip )) {
|
||||||
|
size_t len;
|
||||||
|
- len = strlen(argv[arg_index] + 1);
|
||||||
|
+ len = strlen(argv[arg_index]) + 1;
|
||||||
|
if (len > UINT16_MAX || TIFFSetField(tiff, TIFFFieldTag(fip),
|
||||||
|
(uint16_t)len, argv[arg_index]) != 1)
|
||||||
|
fprintf( stderr, "Failed to set %s=%s\n",
|
||||||
|
--
|
||||||
|
2.33.0
|
||||||
|
|
||||||
11
libtiff.spec
11
libtiff.spec
@ -1,6 +1,6 @@
|
|||||||
Name: libtiff
|
Name: libtiff
|
||||||
Version: 4.3.0
|
Version: 4.3.0
|
||||||
Release: 3
|
Release: 4
|
||||||
Summary: TIFF Library and Utilities
|
Summary: TIFF Library and Utilities
|
||||||
License: libtiff
|
License: libtiff
|
||||||
URL: https://www.simplesystems.org/libtiff/
|
URL: https://www.simplesystems.org/libtiff/
|
||||||
@ -8,6 +8,9 @@ Source0: https://download.osgeo.org/libtiff/tiff-%{version}.tar.gz
|
|||||||
|
|
||||||
Patch6000: backport-CVE-2022-0561.patch
|
Patch6000: backport-CVE-2022-0561.patch
|
||||||
Patch6001: backport-CVE-2022-0562.patch
|
Patch6001: backport-CVE-2022-0562.patch
|
||||||
|
Patch6002: backport-0001-CVE-2022-22844.patch
|
||||||
|
Patch6003: backport-0002-CVE-2022-22844.patch
|
||||||
|
Patch6004: backport-0003-CVE-2022-22844.patch
|
||||||
|
|
||||||
BuildRequires: gcc gcc-c++ zlib-devel libjpeg-devel jbigkit-devel
|
BuildRequires: gcc gcc-c++ zlib-devel libjpeg-devel jbigkit-devel
|
||||||
BuildRequires: libtool automake autoconf pkgconfig
|
BuildRequires: libtool automake autoconf pkgconfig
|
||||||
@ -128,6 +131,12 @@ find html -name 'Makefile*' | xargs rm
|
|||||||
%exclude %{_datadir}/html/man/tiffgt.1.html
|
%exclude %{_datadir}/html/man/tiffgt.1.html
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Mar 08 2022 dongyuzhen <dongyuzhen@h-partners.com> - 4.3.0-4
|
||||||
|
- Type:cves
|
||||||
|
- ID:CVE-2022-22844
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:fix CVE-2022-22844
|
||||||
|
|
||||||
* Wed Feb 23 2022 liuyumeng <liuyumeng5@h-partners.com> -4.3.0-3
|
* Wed Feb 23 2022 liuyumeng <liuyumeng5@h-partners.com> -4.3.0-3
|
||||||
- Type:cves
|
- Type:cves
|
||||||
- ID:CVE-2022-0561CVE-2022-0562
|
- ID:CVE-2022-0561CVE-2022-0562
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user