Skip to content

Commit f911450

Browse files
CBL-Mariner-Botaadhar-agarwalPawelWMS
authored
[AUTO-CHERRYPICK] Patch CVE-2024-7006 in libtiff - branch main (#10154)
Co-authored-by: aadhar-agarwal <108542189+aadhar-agarwal@users.noreply.github.com> Co-authored-by: Pawel Winogrodzki <pawelwi@microsoft.com>
1 parent f8d9c8f commit f911450

2 files changed

Lines changed: 68 additions & 3 deletions

File tree

SPECS/libtiff/CVE-2024-7006.patch

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
From 818fb8ce881cf839fbc710f6690aadb992aa0f9e Mon Sep 17 00:00:00 2001
2+
From: Su_Laus <sulau@freenet.de>
3+
Date: Fri, 1 Dec 2023 20:12:25 +0100
4+
Subject: [PATCH] Check return value of _TIFFCreateAnonField().
5+
6+
Fixes #624
7+
---
8+
libtiff/tif_dirinfo.c | 2 +-
9+
libtiff/tif_dirread.c | 16 ++++++----------
10+
2 files changed, 7 insertions(+), 11 deletions(-)
11+
12+
diff --git a/libtiff/tif_dirinfo.c b/libtiff/tif_dirinfo.c
13+
index 0e705e8..4cfdaad 100644
14+
--- a/libtiff/tif_dirinfo.c
15+
+++ b/libtiff/tif_dirinfo.c
16+
@@ -887,7 +887,7 @@ const TIFFField *_TIFFFindOrRegisterField(TIFF *tif, uint32_t tag,
17+
if (fld == NULL)
18+
{
19+
fld = _TIFFCreateAnonField(tif, tag, dt);
20+
- if (!_TIFFMergeFields(tif, fld, 1))
21+
+ if (fld == NULL || !_TIFFMergeFields(tif, fld, 1))
22+
return NULL;
23+
}
24+
25+
diff --git a/libtiff/tif_dirread.c b/libtiff/tif_dirread.c
26+
index 2c49dc6..78396c4 100644
27+
--- a/libtiff/tif_dirread.c
28+
+++ b/libtiff/tif_dirread.c
29+
@@ -4260,11 +4260,9 @@ int TIFFReadDirectory(TIFF *tif)
30+
dp->tdir_tag, dp->tdir_tag);
31+
/* the following knowingly leaks the
32+
anonymous field structure */
33+
- if (!_TIFFMergeFields(
34+
- tif,
35+
- _TIFFCreateAnonField(tif, dp->tdir_tag,
36+
- (TIFFDataType)dp->tdir_type),
37+
- 1))
38+
+ const TIFFField *fld = _TIFFCreateAnonField(
39+
+ tif, dp->tdir_tag, (TIFFDataType)dp->tdir_type);
40+
+ if (fld == NULL || !_TIFFMergeFields(tif, fld, 1))
41+
{
42+
TIFFWarningExtR(
43+
tif, module,
44+
@@ -5138,11 +5136,9 @@ int TIFFReadCustomDirectory(TIFF *tif, toff_t diroff,
45+
"Unknown field with tag %" PRIu16 " (0x%" PRIx16
46+
") encountered",
47+
dp->tdir_tag, dp->tdir_tag);
48+
- if (!_TIFFMergeFields(
49+
- tif,
50+
- _TIFFCreateAnonField(tif, dp->tdir_tag,
51+
- (TIFFDataType)dp->tdir_type),
52+
- 1))
53+
+ const TIFFField *fld = _TIFFCreateAnonField(
54+
+ tif, dp->tdir_tag, (TIFFDataType)dp->tdir_type);
55+
+ if (fld == NULL || !_TIFFMergeFields(tif, fld, 1))
56+
{
57+
TIFFWarningExtR(tif, module,
58+
"Registering anonymous field with tag %" PRIu16
59+
--
60+
2.34.1
61+

SPECS/libtiff/libtiff.spec

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
Summary: TIFF libraries and associated utilities.
22
Name: libtiff
33
Version: 4.6.0
4-
Release: 3%{?dist}
4+
Release: 4%{?dist}
55
License: libtiff
66
Vendor: Microsoft Corporation
77
Distribution: Mariner
88
Group: System Environment/Libraries
99
URL: https://gitlab.com/libtiff/libtiff
1010
Source0: https://gitlab.com/libtiff/libtiff/-/archive/v%{version}/libtiff-v%{version}.tar.gz
1111
Patch0: CVE-2023-52356.patch
12-
Patch1: CVE-2023-6277.patch
12+
Patch1: CVE-2024-7006.patch
13+
Patch2: CVE-2023-6277.patch
1314
BuildRequires: autoconf
1415
BuildRequires: automake
1516
BuildRequires: libjpeg-turbo-devel
@@ -62,9 +63,12 @@ make %{?_smp_mflags} -k check
6263
%{_docdir}/*
6364

6465
%changelog
65-
* Wed Aug 07 2024 Sumedh Sharma <sumsharma@microsoft.com> - 4.6.0-3
66+
* Mon Aug 19 2024 Sumedh Sharma <sumsharma@microsoft.com> - 4.6.0-4
6667
- Add patch to resolve CVE-2023-6277
6768

69+
* Tue Aug 13 2024 Aadhar Agarwal <aadagarwal@microsoft.com> - 4.6.0-3
70+
- Add patch for CVE-2024-7006
71+
6872
* Thu Mar 7 2024 Xiaohong Deng <xiaohongdeng@microsoft.com> - 4.6.0-2
6973
- Add patches for CVE-2023-52356
7074

0 commit comments

Comments
 (0)