diff mbox series

[meta-oe,kirkstone,1/8] opensc: fix CVE-2024-1454

Message ID 20250115072428.3667416-1-peng.zhang1.cn@windriver.com
State New
Headers show
Series [meta-oe,kirkstone,1/8] opensc: fix CVE-2024-1454 | expand

Commit Message

Peng Zhang Jan. 15, 2025, 7:24 a.m. UTC
From: Zhang Peng <peng.zhang1.cn@windriver.com>

CVE-2024-1454:
The use-after-free vulnerability was found in the AuthentIC driver in OpenSC packages,
occuring in the card enrolment process using pkcs15-init when a user or administrator
enrols or modifies cards. An attacker must have physical access to the computer system
and requires a crafted USB device or smart card to present the system with specially
crafted responses to the APDUs, which are considered high complexity and low severity.
This manipulation can allow for compromised card management operations during enrolment.

Reference:
[https://nvd.nist.gov/vuln/detail/CVE-2024-1454]

Upstream patches:
[https://github.com/OpenSC/OpenSC/commit/5835f0d4f6c033bd58806d33fa546908d39825c9]

Signed-off-by: Zhang Peng <peng.zhang1.cn@windriver.com>
---
 .../opensc/files/CVE-2024-1454.patch          | 37 +++++++++++++++++++
 .../recipes-support/opensc/opensc_0.22.0.bb   |  1 +
 2 files changed, 38 insertions(+)
 create mode 100644 meta-oe/recipes-support/opensc/files/CVE-2024-1454.patch
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/opensc/files/CVE-2024-1454.patch b/meta-oe/recipes-support/opensc/files/CVE-2024-1454.patch
new file mode 100644
index 000000000..0ef26d447
--- /dev/null
+++ b/meta-oe/recipes-support/opensc/files/CVE-2024-1454.patch
@@ -0,0 +1,37 @@ 
+From 5835f0d4f6c033bd58806d33fa546908d39825c9 Mon Sep 17 00:00:00 2001
+From: Jakub Jelen <jjelen@redhat.com>
+Date: Mon, 18 Dec 2023 11:09:50 +0100
+Subject: [PATCH] authentic: Avoid use after free
+
+Thanks oss-fuzz
+
+https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=64898
+
+CVE: CVE-2024-1454
+Upstream-Status: Backport [https://github.com/OpenSC/OpenSC/commit/5835f0d4f6c033bd58806d33fa546908d39825c9]
+
+The original patch is adjusted to fit for the current version.
+
+Signed-off-by: Zhang Peng <peng.zhang1.cn@windriver.com>
+---
+ src/pkcs15init/pkcs15-authentic.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/pkcs15init/pkcs15-authentic.c b/src/pkcs15init/pkcs15-authentic.c
+index c6894dd37..adedd0a04 100644
+--- a/src/pkcs15init/pkcs15-authentic.c
++++ b/src/pkcs15init/pkcs15-authentic.c
+@@ -858,7 +858,10 @@ authentic_emu_update_tokeninfo(struct sc_profile *profile, struct sc_pkcs15_card
+         rv = sc_select_file(p15card->card, &path, &file);
+         if (!rv)   {
+ 		rv = sc_get_challenge(p15card->card, buffer, sizeof(buffer));
+-		LOG_TEST_RET(ctx, rv, "Get challenge error");
++		if (rv < 0) {
++			sc_file_free(file);
++			LOG_TEST_RET(ctx, rv, "Get challenge error");
++		}
+ 
+ 		len = file->size > sizeof(buffer) ? sizeof(buffer) : file->size;
+ 	        rv = sc_update_binary(p15card->card, 0, buffer, len, 0);
+--
+2.34.1
\ No newline at end of file
diff --git a/meta-oe/recipes-support/opensc/opensc_0.22.0.bb b/meta-oe/recipes-support/opensc/opensc_0.22.0.bb
index 7915d8913..834b83d68 100644
--- a/meta-oe/recipes-support/opensc/opensc_0.22.0.bb
+++ b/meta-oe/recipes-support/opensc/opensc_0.22.0.bb
@@ -23,6 +23,7 @@  SRC_URI = "git://github.com/OpenSC/OpenSC;branch=master;protocol=https \
            file://CVE-2023-40661-5.patch \
            file://CVE-2023-40661-6.patch \
            file://CVE-2023-40661-7.patch \
+           file://CVE-2024-1454.patch \
           "
 
 # CVE-2021-34193 is a duplicate CVE covering the 5 individual