summaryrefslogtreecommitdiffstats
path: root/meta-oe
diff options
context:
space:
mode:
authorGyorgy Sarvari <skandigraun@gmail.com>2026-03-11 10:42:33 +0100
committerAnuj Mittal <anuj.mittal@oss.qualcomm.com>2026-03-26 10:29:23 +0530
commit18824f8a2db50af7b8e6ba196d86ecdba6b5091f (patch)
treefdd21857b82c79993374993105c6f83e113090de /meta-oe
parent51be807682045359c256e41b28f5e82f1514044f (diff)
downloadmeta-openembedded-18824f8a2db50af7b8e6ba196d86ecdba6b5091f.tar.gz
exiv2: patch CVE-2026-25884
Details: https://nvd.nist.gov/vuln/detail/CVE-2026-25884 Backport the commits referenced by the NVD advisory. One of the patches contain some binary data (for test data), which needs to be applied with git PATCHTOOL.. Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com> Signed-off-by: Anuj Mittal <anuj.mittal@oss.qualcomm.com>
Diffstat (limited to 'meta-oe')
-rw-r--r--meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-1.patch69
-rw-r--r--meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-2.patch25
-rw-r--r--meta-oe/recipes-support/exiv2/exiv2_0.28.7.bb7
3 files changed, 100 insertions, 1 deletions
diff --git a/meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-1.patch b/meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-1.patch
new file mode 100644
index 0000000000..a2b41adcef
--- /dev/null
+++ b/meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-1.patch
@@ -0,0 +1,69 @@
1From 237f63c2abcd6c346bf5d27044ab76f5388bb4e8 Mon Sep 17 00:00:00 2001
2From: Kevin Backhouse <kevinbackhouse@github.com>
3Date: Sat, 7 Feb 2026 22:50:46 +0000
4Subject: [PATCH] Regression test for
5 https://github.com/Exiv2/exiv2/security/advisories/GHSA-9mxq-4j5g-5wrp
6
7CVE: CVE-2026-25884
8Upstream-Status: Backport [https://github.com/Exiv2/exiv2/commit/191138fef73f331de1311e735d8e6359a36fa786]
9Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
10---
11 test/data/issue_ghsa_9mxq_4j5g_5wrp.crw | Bin 0 -> 74 bytes
12 .../github/test_issue_ghsa_9mxq_4j5g_5wrp.py | 24 ++++++++++++++++++
13 .../test_regression_allfiles.py | 1 +
14 3 files changed, 25 insertions(+)
15 create mode 100644 test/data/issue_ghsa_9mxq_4j5g_5wrp.crw
16 create mode 100644 tests/bugfixes/github/test_issue_ghsa_9mxq_4j5g_5wrp.py
17
18diff --git a/test/data/issue_ghsa_9mxq_4j5g_5wrp.crw b/test/data/issue_ghsa_9mxq_4j5g_5wrp.crw
19new file mode 100644
20index 0000000000000000000000000000000000000000..816af2663b3ec93d0d4de4755a02b5d0f5d09640
21GIT binary patch
22literal 74
23zcmebDRA69W@NjhuaCUYH`mcZv7#X+>WPvJpfmnfwK>?&13|Kip6i5oF1;hjZi0B7h
24
25literal 0
26HcmV?d00001
27
28diff --git a/tests/bugfixes/github/test_issue_ghsa_9mxq_4j5g_5wrp.py b/tests/bugfixes/github/test_issue_ghsa_9mxq_4j5g_5wrp.py
29new file mode 100644
30index 000000000..199328f25
31--- /dev/null
32+++ b/tests/bugfixes/github/test_issue_ghsa_9mxq_4j5g_5wrp.py
33@@ -0,0 +1,24 @@
34+# -*- coding: utf-8 -*-
35+
36+from system_tests import CaseMeta, CopyTmpFiles, path
37+
38+
39+class CrwMap_decode0x0805_OutOfBoundsRead(metaclass=CaseMeta):
40+ """
41+ Regression test for the bug described in:
42+ https://github.com/Exiv2/exiv2/security/advisories/GHSA-9mxq-4j5g-5wrp
43+ """
44+
45+ url = "https://github.com/Exiv2/exiv2/security/advisories/GHSA-9mxq-4j5g-5wrp"
46+
47+ filename = path("$data_path/issue_ghsa_9mxq_4j5g_5wrp.crw")
48+ commands = ["$exiv2 $filename"]
49+ stdout = ["""File name : $filename
50+File size : 74 Bytes
51+MIME type : image/x-canon-crw
52+Image size : 0 x 0
53+"""
54+]
55+ stderr = ["""$filename: No Exif data found in the file
56+"""]
57+ retval = [253]
58diff --git a/tests/regression_tests/test_regression_allfiles.py b/tests/regression_tests/test_regression_allfiles.py
59index d1bec2ed3..87caa9798 100644
60--- a/tests/regression_tests/test_regression_allfiles.py
61+++ b/tests/regression_tests/test_regression_allfiles.py
62@@ -122,6 +122,7 @@ def get_valid_files(data_dir):
63 "issue_ghsa_g9xm_7538_mq8w_poc.mov",
64 "issue_ghsa_38h4_fx85_qcx7_poc.tiff",
65 "issue_ghsa_496f_x7cq_cq39_poc.jpg",
66+ "issue_ghsa_9mxq_4j5g_5wrp.crw",
67 "pocIssue283.jpg",
68 "poc_1522.jp2",
69 "xmpsdk.xmp",
diff --git a/meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-2.patch b/meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-2.patch
new file mode 100644
index 0000000000..b461e09c71
--- /dev/null
+++ b/meta-oe/recipes-support/exiv2/exiv2/CVE-2026-25884-2.patch
@@ -0,0 +1,25 @@
1From 5c5ab83247997396b8a7de8e4425a1a04db01c14 Mon Sep 17 00:00:00 2001
2From: Kevin Backhouse <kevinbackhouse@github.com>
3Date: Sat, 31 Jan 2026 15:31:55 +0000
4Subject: [PATCH] Fix out-of-bounds read.
5
6CVE: CVE-2026-25884
7Upstream-Status: Backport [https://github.com/Exiv2/exiv2/commit/5b8f1f4d92b8f27a5a80e0c3d3eb9dce7620d9f1]
8Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
9---
10 src/crwimage_int.cpp | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/src/crwimage_int.cpp b/src/crwimage_int.cpp
14index 9e2c1c6a4..1d2378a61 100644
15--- a/src/crwimage_int.cpp
16+++ b/src/crwimage_int.cpp
17@@ -646,7 +646,7 @@ const CrwMapping* CrwMap::crwMapping(uint16_t crwDir, uint16_t crwTagId) {
18
19 void CrwMap::decode0x0805(const CiffComponent& ciffComponent, const CrwMapping* /*pCrwMapping*/, Image& image,
20 ByteOrder /*byteOrder*/) {
21- std::string s(reinterpret_cast<const char*>(ciffComponent.pData()));
22+ auto s = std::string(reinterpret_cast<const char*>(ciffComponent.pData()), ciffComponent.size());
23 image.setComment(s);
24 } // CrwMap::decode0x0805
25
diff --git a/meta-oe/recipes-support/exiv2/exiv2_0.28.7.bb b/meta-oe/recipes-support/exiv2/exiv2_0.28.7.bb
index e1f57ae8c7..45d88e2a3d 100644
--- a/meta-oe/recipes-support/exiv2/exiv2_0.28.7.bb
+++ b/meta-oe/recipes-support/exiv2/exiv2_0.28.7.bb
@@ -4,7 +4,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
4 4
5DEPENDS = "zlib expat brotli libinih" 5DEPENDS = "zlib expat brotli libinih"
6 6
7SRC_URI = "git://github.com/Exiv2/exiv2.git;protocol=https;branch=0.28.x;tag=v${PV}" 7SRC_URI = "git://github.com/Exiv2/exiv2.git;protocol=https;branch=0.28.x;tag=v${PV} \
8 file://CVE-2026-25884-1.patch \
9 file://CVE-2026-25884-2.patch \
10 "
8SRCREV = "afcb7a8ba84a7de36d2f1ee7689394e078697956" 11SRCREV = "afcb7a8ba84a7de36d2f1ee7689394e078697956"
9 12
13PATCHTOOL = "git"
14
10inherit cmake gettext 15inherit cmake gettext