From 7e91b406fa1bc43bc8086733dc447199ecbe2919 Mon Sep 17 00:00:00 2001 From: Zhang Peng Date: Wed, 15 Jan 2025 15:24:21 +0800 Subject: [PATCH] opensc: fix CVE-2024-1454 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 Signed-off-by: Armin Kuster --- .../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 --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 0000000000..0ef26d447f --- /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 +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 +--- + 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 7915d8913b..834b83d686 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