From patchwork Wed Sep 9 13:35:29 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jakub Szczudlo (Nokia)" X-Patchwork-Id: 97731 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 861ABC79FB6 for ; Wed, 9 Sep 2026 13:35:38 +0000 (UTC) Received: from AM0PR02CU008.outbound.protection.outlook.com (AM0PR02CU008.outbound.protection.outlook.com [52.101.72.38]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.12382.1788960935098385025 for ; Wed, 09 Sep 2026 06:35:35 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nokia.com header.s=selector1 header.b=EXkbS47J; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nokia.com, ip: 52.101.72.38, mailfrom: jakub.szczudlo@nokia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tGkIvPPpBNOF+arMxy3LsY8mjkTzqgSC+5BR/mHy/iRiFp8ozGhaoFDtvLKiRf/dzUU8jIyXac4S4eQ5vvLqPbeft6THVqtd9+PMSwnFfTbNRWZv+ph+SMMZ/x2uRL62ByEYiS0hJ7HqB8msAwz6wzsBHLz4gQJuXtFNxuRmAIg30UwNfWc7g6SI9kpqB88hFgDV9rpSHblj0nTBHVPToACfRZz+uupLfA05TEIlk43RVUjXjEWrocDWt2YtA1GZFUw0Bi+0/pYySbizeB8pSRmozUZ8PbWtr0+uAB3xc6PT7XWCIJhoxG0rked4tw3HlQ9xVyy+GuaDkrLocNe9Bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+qSzjwqHn89OeYq/y2zrVHCDO014JyYCC+Sg2hZnOd0=; b=m8GmsEgKGHczHXSnwHmmaWWodK+DmrVn845LvkN1YtGcPazS0iiYS3Vhv/sMGWKLJHtwtYiVQvTmJfZRwKRrxwt6Cy9AhGvBIr5w2PC8m55ZVBadeYZ3hLAzrKpqlkafrdxz9JziRbn99U8VbPFgPfLWruTs71zjUSxRDvKuNMWlG9YjpV/lMNIoi4vJMAeRA6hIntBGmNfwTYhyhwI6823ktZlXFra2FQniLqH6WUlh+om/9WK+l/YA2i2YNeXYOhFQEtnIk8Sc8sjNUGY2CbuFXFwu+ZQPpxOq39no1P1dbkqHOtXX3OJeXIadFDEpYEK4ZEWNubZTuSkkZosqTA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+qSzjwqHn89OeYq/y2zrVHCDO014JyYCC+Sg2hZnOd0=; b=EXkbS47JXBBdKZ/cHVojwR/hkw6SFIN1OxtOsvSvnlovHA8o3INPO3vMHbPJehT8lkgw2X2bnYSM9AXORaUQsaukfQI4mKmHWp8o0t7j6OA/adZSNJGM6lEDxF7w64i4YGFvXtSl3BM2E7YWoIDOQuLjyZ4Yi1G+54D1uku7QAaQyRAA33XgZSlB2Nq+pEEf6/BZNoP9VzCQgBiTP4WwgvB2g1CyDjdlPHhq+cUW7dO6DXS6xhgawjHCfi+ckoUGYYSMtmN7lMa0sxcaRzV/cvTHM2wU0f9b7bkf71919YjDVAh1KqK70WKvtDafzWKKBvIfPz1/DfVTwhoAtW9iiQ== Received: from GV2PR07MB11919.eurprd07.prod.outlook.com (2603:10a6:150:357::20) by VI0PR07MB12084.eurprd07.prod.outlook.com (2603:10a6:800:33b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.7; Wed, 9 Sep 2026 13:35:30 +0000 Received: from GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680]) by GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680%3]) with mapi id 15.21.0360.008; Wed, 9 Sep 2026 13:35:29 +0000 From: "Jakub Szczudlo (Nokia)" To: "openembedded-core@lists.openembedded.org" CC: "yoann.congal@smile.fr" , "Jakub Szczudlo (Nokia)" Subject: [wrynose][PATCH 1/5] gnutls: fix CVE-2026-42012 Thread-Topic: [wrynose][PATCH 1/5] gnutls: fix CVE-2026-42012 Thread-Index: AQHdQGAUEIYZ2PsTu06uQUJr4RSawA== Date: Wed, 9 Sep 2026 13:35:29 +0000 Message-ID: <20260909133510.3286-1-jakub.szczudlo@nokia.com> Accept-Language: en-US, en-150 Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: GV2PR07MB11919:EE_|VI0PR07MB12084:EE_ x-ms-office365-filtering-correlation-id: c15a64b5-1a51-44d3-8993-08df0e7736fc x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|23010399003|376014|1800799024|38070700021|5023799004|11063799006|10067099003|56012099006|18002099003|6133799003|12006099003|3023799007|13003099007; x-microsoft-antispam-message-info: Mhhf6l1Q55uMM+9ciDn7qvUka4JTEvQ1MC3vzAh1rcqOKac2bETAHCKSk83jxW+fdKRMbcgOTbIDSTMo6ohhMnpVeRUvHsVjA41dZqvjSv5QEgU+pOtMOAri2UzPZAlqaK2shwVEmW0gxg/p6QbEp75zQhInXH+NESWJEs+SAtLIqwILPmUt8iUomFJ1C5+n9fE0hxcA1mGPiNfW6+uw9bhgWUjT1TsNP8KQDaFZ9Ygix/DETl2CznmPD+dtiLZPzVCBtRms16S39phhkdvBHEqGJMpFgCvx3smAE+OJ4y7G9zHto8u/dNMSvJ0eacsoMDGOq43/OeNpI0NpxDG2ApV4C+rqilaUPUtrLpQMleLbhoyTL0eFYN4IY6yUzJxVi1X7y1xeNMUYvMf48iFfSUMvFEwnb3fENAjGM5FL1lMSa7COjuOvptiMMFGYt0eOdbc7zqESwlVoNaRwoFe4GYSxmv3cGGzzJO3zMaOZcQ/615ZNYrugis4YEXnHAnc+2HeWbSEfKBLvM3RTjrmwdzcwpu5/+AmflotaA9+/SbCnXwXWrCHDBpqaFoBwBcj2t4VAS/lMhq6oQ8LP+XqWcPVllWIsw1sUj4OnTkEHMbPsxo7RV8uH03wtDTzTXxOf95FIvYYBno5M2/q+ka+qdgRJCAZ/usCymjVDTa/QSJ5GeZjZUxo4Hh7CeoXlfk5mgi2m40/oJnYIFZVRUUH48RX5ZCirE9KSllVR1skn2hk= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR07MB11919.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(23010399003)(376014)(1800799024)(38070700021)(5023799004)(11063799006)(10067099003)(56012099006)(18002099003)(6133799003)(12006099003)(3023799007)(13003099007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?EIGo0Ps6kDEm+TVSI5su2hk?= =?iso-8859-1?q?npqSZ3MgVg5vQLRF+YLfn6eyx/TqIlPvOORNf/E/fUBQpCTfxVjsEI+prATF?= =?iso-8859-1?q?oOYetU5Z53PUFKkaG2tTTDsqWhf/v09MBqR5oy7u2hB7F1hT+2oWlHl/VDUZ?= =?iso-8859-1?q?eJNhlP06X6AdphSYAhIiewE6Tuf/h3Y6vuWKWKo32Fu0PV+yap9dQWQBFrjh?= =?iso-8859-1?q?vPuzwVEC4y+mB1I6PHPprSpWuOzn32FEp/fcvj8ASygoqsB1ZvTjBkcI4H1T?= =?iso-8859-1?q?JHFT+RA74G4S/pQWWoDnqhBt7ww5YSeHmZRVXwl14hcH/muj9tkMrUieZb0M?= =?iso-8859-1?q?8KoepBhEQzfbZhfDbyCCrHbqOmX15Y2bSEWUw1cOK5ndSTyMbp7JBJtUj4Ab?= =?iso-8859-1?q?opHhKx1abAz/NczQMbMznr7brRT6PICgwcqjEzvUgxTJJDhOEwWuqwCHxanP?= =?iso-8859-1?q?1CEeK3xE4KhSduh5SlSUkm0xpn0Djm4cnM4uhCjXf2fBTbbT5SC9QiN3s2rl?= =?iso-8859-1?q?ou7j+jmsbs4e7MPK5UNa4KASd0hN73d+mu+1ssBw4fbrVvF5MPuLrTtj8gmb?= =?iso-8859-1?q?O/cW1//ATW+okHs9WAwkRkdWX/n8RdvcTXQrvK6WNz7QpW6u2rVFAaw+q+Qs?= =?iso-8859-1?q?u2qGhiH/INRiax8ZRTLZ9kJCXzTv+bj32Zb3UIeanxgkFo211iIb4C936aJd?= =?iso-8859-1?q?fQh0EY2g6zgh9uoopMBKwlhw/y1yKly/DWehc7aJCaJkuByWzlIrLr82SqFL?= =?iso-8859-1?q?IkWsNW+Rax3LXgQgXXhZEh9mXY8KWywf2NzaKyP7B9K14B+IJVLwmFPPs6TA?= =?iso-8859-1?q?4d2nnX+ZGsxlqJ1wiNvIB+14Ak94aYmNmemNmLkQ7GWE+sAmgKHuPv48DMQ+?= =?iso-8859-1?q?7n3EVEwrzQvG6qzPbqrO0avTI22Kq3CFP4aEIa6UVNRUH9eP2V0VZuLlh9nw?= =?iso-8859-1?q?WmW+Lfj1ybpbdWJJmDo54SiQHrwO1jhHBzw0VTxfR3RRUeSXCW/Dpwg+RAUA?= =?iso-8859-1?q?Z4UY6Uk/CYgDQdkYQ7AGDJWJrjCNHadyylX5oXzhR7M4iUaVkAJB7xbY0JY6?= =?iso-8859-1?q?IjNauIRnGYLYz1t1+3Nh8lYwxbLo7zheGvrpExRhCF9hkGHwtVhFW3XUOPOs?= =?iso-8859-1?q?cvozcQr6udXccut/hCLftELxM1QP8wAoJgrvQ/ZKFvLtMlayz4XSxkIzvexI?= =?iso-8859-1?q?O8M7LYHvJmVxe/ACqha4S6GItOO4s/A9MgfA3dI9maSJOIeAQlcyyMfEpBzE?= =?iso-8859-1?q?6ayXxuEmousXu6RglA/wyNBH+9zzGHHMrVYTzOsTmyZG/z/P5zQA1xcsOxT0?= =?iso-8859-1?q?ixOyDSmHlE9+DpuSTMCdkhjNRxqLxJq5zELJ966mIkiK1AzgGb9S+g3DdL28?= =?iso-8859-1?q?ddsuRkN1w7JKBlJJLTgKhm0Un7h6ipU0z5SEqdTkYiq9AR/RgRw1Yt0kR1G3?= =?iso-8859-1?q?BibF97k2LDyCSvxEMGCcOOPnANZs7eN0TGeylg1mYFvDSxP946zF+lhor6UQ?= =?iso-8859-1?q?+yV1fq1ygu7ujHtlB6qSfHOS2jfX5xCqVTg4nORn79nOylRCe3gc9yZ1lj4J?= =?iso-8859-1?q?hxaz4lxHTZfif9EF2iBtX+HyJYw8SoQouzufLTjBhRcoOrFkPx7z5e3qqRwL?= =?iso-8859-1?q?lKjTEbb/6wwkbyV5SpHupUAPtbFvRHmiwzF+YCQ1IjVWYUOZIv9dM8RSXlSR?= =?iso-8859-1?q?3U8fukWCg0/t+Lo34wUQ1hQMeQI0CEKslHEFSMGbev6LJAV7nByeXIw1Je0+?= =?iso-8859-1?q?9csW+FCkrw5n2oVZj4O6pKCZPTry10djlJWFDbG3SPIyQvw=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: GV2PR07MB11919.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c15a64b5-1a51-44d3-8993-08df0e7736fc X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2026 13:35:29.5941 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: LH0cGEmD20y3pn5EwyqbU5ct4VQ3chHaReiHxwVOx29xFE4AQCdUh08cVIsN+RyUqDLsvnafEDE+tmJ/WKpPHnf9UyUXG+x5mhkJF9TvBx4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR07MB12084 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 09 Sep 2026 13:35:38 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/245463 Backport patch to fix CVE-2026-42012. References: https://nvd.nist.gov/vuln/detail/CVE-2026-42012 Upstream fix: https://gitlab.com/gnutls/gnutls/-/commit/8dcc6a1f48945997666ac9f10896819edd01a03b Tested with ptest Pre patches taken from upstream so CVE fix will land cleanly Signed-off-by: Jakub Szczudlo --- .../gnutls/gnutls/CVE-2026-42012-pre1.patch | 70 ++++++++ .../gnutls/gnutls/CVE-2026-42012-pre2.patch | 153 ++++++++++++++++++ .../gnutls/gnutls/CVE-2026-42012.patch | 48 ++++++ meta/recipes-support/gnutls/gnutls_3.8.12.bb | 3 + 4 files changed, 274 insertions(+) create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre1.patch create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre2.patch create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42012.patch diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre1.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre1.patch new file mode 100644 index 0000000000..1149dafef2 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre1.patch @@ -0,0 +1,70 @@ +Backport of: + +From 6133fb459b74a9dcfa2d0ff010a4e03c56822d39 Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Fri, 13 Mar 2026 17:00:03 +0100 +Subject: [PATCH] x509/hostname-verify: refactor and simplify CN fallback logic + +Signed-off-by: Alexander Sosedkin +CVE: CVE-2026-42012 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/6133fb459b74a9dcfa2d0ff010a4e03c56822d39] + +Signed-off-by: Jakub Szczudlo +--- + lib/x509/hostname-verify.c | 15 ++++++--------- + 1 file changed, 6 insertions(+), 9 deletions(-) + +--- a/lib/x509/hostname-verify.c ++++ b/lib/x509/hostname-verify.c +@@ -108,7 +108,7 @@ unsigned gnutls_x509_crt_check_ip(gnutls + * that we do not fallback to CN-ID if we encounter a supported name + * type. + */ +-#define IS_SAN_SUPPORTED(san) \ ++#define PRECLUDES_CN_FALLBACK(san) \ + (san == GNUTLS_SAN_DNSNAME || san == GNUTLS_SAN_IPADDRESS) + + /** +@@ -151,13 +151,12 @@ unsigned gnutls_x509_crt_check_hostname2 + { + char dnsname[MAX_CN]; + size_t dnsnamesize; +- int found_dnsname = 0; + int ret = 0; + int i = 0; + struct in_addr ipv4; + char *p = NULL; + char *a_hostname; +- unsigned have_other_addresses = 0; ++ bool cn_fallback_allowed = true; + gnutls_datum_t out; + + /* check whether @hostname is an ip address */ +@@ -213,9 +212,10 @@ hostname_fallback: + ret = gnutls_x509_crt_get_subject_alt_name(cert, i, dnsname, + &dnsnamesize, NULL); + +- if (ret == GNUTLS_SAN_DNSNAME) { +- found_dnsname = 1; ++ if (PRECLUDES_CN_FALLBACK(ret)) ++ cn_fallback_allowed = false; + ++ if (ret == GNUTLS_SAN_DNSNAME) { + if (memchr(dnsname, '\0', dnsnamesize)) { + _gnutls_debug_log( + "certificate has %s with embedded null in name\n", +@@ -236,13 +236,10 @@ hostname_fallback: + ret = 1; + goto cleanup; + } +- } else { +- if (IS_SAN_SUPPORTED(ret)) +- have_other_addresses = 1; + } + } + +- if (!have_other_addresses && !found_dnsname && ++ if (cn_fallback_allowed && + _gnutls_check_key_purpose(cert, GNUTLS_KP_TLS_WWW_SERVER, 0) != 0) { + /* did not get the necessary extension, use CN instead, if the + * certificate would have been acceptable for a TLS WWW server purpose. diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre2.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre2.patch new file mode 100644 index 0000000000..c192a144c0 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42012-pre2.patch @@ -0,0 +1,153 @@ +Backport of: + +From 5cc003b9688378f6c7934b1df0aa147e80006be4 Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Fri, 13 Mar 2026 17:41:33 +0100 +Subject: [PATCH] x509: add bare-bones awareness of SRV virtual SAN + +There's no support for constraints, no certtool support, no nothing. +Just added what's easy to add because I needed a virtual SAN for them. + +Signed-off-by: Alexander Sosedkin +CVE: CVE-2026-42012 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/5cc003b9688378f6c7934b1df0aa147e80006be4] + +Signed-off-by: Jakub Szczudlo +--- + lib/includes/gnutls/gnutls.h.in | 4 +++- + lib/x509/common.h | 1 + + lib/x509/name_constraints.c | 3 ++- + lib/x509/output.c | 6 ++++++ + lib/x509/virt-san.c | 23 +++++++++++++++++++++++ + lib/x509/x509.c | 3 ++- + 6 files changed, 37 insertions(+), 3 deletions(-) + +--- a/lib/includes/gnutls/gnutls.h.in ++++ b/lib/includes/gnutls/gnutls.h.in +@@ -2698,6 +2698,7 @@ void gnutls_psk_set_server_params_functi + * @GNUTLS_SAN_OTHERNAME_XMPP: Virtual SAN, used by certain functions for convenience. + * @GNUTLS_SAN_OTHERNAME_KRB5PRINCIPAL: Virtual SAN, used by certain functions for convenience. + * @GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL: Virtual SAN, used by certain functions for convenience. ++ * @GNUTLS_SAN_OTHERNAME_SRV: Virtual SAN, used by certain functions for convenience. + * + * Enumeration of different subject alternative names types. + */ +@@ -2715,7 +2716,8 @@ typedef enum gnutls_x509_subject_alt_nam + Used by gnutls_x509_crt_get_subject_alt_othername_oid. */ + GNUTLS_SAN_OTHERNAME_XMPP = 1000, + GNUTLS_SAN_OTHERNAME_KRB5PRINCIPAL, +- GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL ++ GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL, ++ GNUTLS_SAN_OTHERNAME_SRV + } gnutls_x509_subject_alt_name_t; + + struct gnutls_openpgp_crt_int; +--- a/lib/x509/common.h ++++ b/lib/x509/common.h +@@ -107,6 +107,7 @@ + #define XMPP_OID "1.3.6.1.5.5.7.8.5" + #define KRB5_PRINCIPAL_OID "1.3.6.1.5.2.2" + #define MSUSER_PRINCIPAL_NAME_OID "1.3.6.1.4.1.311.20.2.3" ++#define SRV_OID "1.3.6.1.5.5.7.8.7" + #define PKIX1_RSA_PSS_MGF1_OID "1.2.840.113549.1.1.8" + #define PKIX1_RSA_OAEP_P_SPECIFIED_OID "1.9" + +--- a/lib/x509/name_constraints.c ++++ b/lib/x509/name_constraints.c +@@ -516,7 +516,8 @@ static int validate_name_constraints_nod + if (type != GNUTLS_SAN_DNSNAME && type != GNUTLS_SAN_RFC822NAME && + type != GNUTLS_SAN_DN && type != GNUTLS_SAN_URI && + type != GNUTLS_SAN_IPADDRESS && +- type != GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL) { ++ type != GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL && ++ type != GNUTLS_SAN_OTHERNAME_SRV) { + return gnutls_assert_val(GNUTLS_E_X509_UNKNOWN_SAN); + } + +--- a/lib/x509/output.c ++++ b/lib/x509/output.c +@@ -121,6 +121,7 @@ static void print_name(gnutls_buffer_st + if ((type == GNUTLS_SAN_DNSNAME || type == GNUTLS_SAN_OTHERNAME_XMPP || + type == GNUTLS_SAN_OTHERNAME_KRB5PRINCIPAL || + type == GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL || ++ type == GNUTLS_SAN_OTHERNAME_SRV || + type == GNUTLS_SAN_RFC822NAME || type == GNUTLS_SAN_URI) && + sname != NULL && strlen(sname) != name->size) { + adds(str, _("warning: SAN contains an embedded NUL, " +@@ -180,6 +181,11 @@ static void print_name(gnutls_buffer_st + name->size, NON_NULL(name->data)); + break; + ++ case GNUTLS_SAN_OTHERNAME_SRV: ++ addf(str, _("%sSRVName: %.*s\n"), prefix, name->size, ++ NON_NULL(name->data)); ++ break; ++ + default: + addf(str, _("%sUnknown name: "), prefix); + _gnutls_buffer_hexprint(str, name->data, name->size); +--- a/lib/x509/virt-san.c ++++ b/lib/x509/virt-san.c +@@ -45,6 +45,9 @@ static int san_othername_to_virtual(cons + memcmp(oid, MSUSER_PRINCIPAL_NAME_OID, + sizeof(MSUSER_PRINCIPAL_NAME_OID) - 1) == 0) + return GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL; ++ else if ((unsigned)size == (sizeof(SRV_OID) - 1) && ++ memcmp(oid, SRV_OID, sizeof(SRV_OID) - 1) == 0) ++ return GNUTLS_SAN_OTHERNAME_SRV; + } + + return GNUTLS_SAN_OTHERNAME; +@@ -59,6 +62,8 @@ static const char *virtual_to_othername_ + return KRB5_PRINCIPAL_OID; + case GNUTLS_SAN_OTHERNAME_MSUSERPRINCIPAL: + return MSUSER_PRINCIPAL_NAME_OID; ++ case GNUTLS_SAN_OTHERNAME_SRV: ++ return SRV_OID; + default: + return NULL; + } +@@ -126,6 +131,15 @@ int _gnutls_alt_name_assign_virt_type(st + name->type = GNUTLS_SAN_OTHERNAME; + break; + ++ case GNUTLS_SAN_OTHERNAME_SRV: ++ ret = _gnutls_x509_encode_string(ASN1_ETYPE_IA5_STRING, ++ san->data, san->size, ++ &encoded); ++ if (ret < 0) ++ return gnutls_assert_val(ret); ++ name->san = _gnutls_steal_datum(&encoded); ++ break; ++ + default: + return gnutls_assert_val(GNUTLS_E_INVALID_REQUEST); + } +@@ -187,6 +201,15 @@ int gnutls_x509_othername_to_virtual(con + othername->data, + othername->size, virt, 0); + if (ret < 0) { ++ gnutls_assert(); ++ return ret; ++ } ++ return 0; ++ case GNUTLS_SAN_OTHERNAME_SRV: ++ ret = _gnutls_x509_decode_string(ASN1_ETYPE_IA5_STRING, ++ othername->data, ++ othername->size, virt, 0); ++ if (ret < 0) { + gnutls_assert(); + return ret; + } +--- a/lib/x509/x509.c ++++ b/lib/x509/x509.c +@@ -1562,7 +1562,8 @@ inline static int is_type_printable(int + { + if (type == GNUTLS_SAN_DNSNAME || type == GNUTLS_SAN_RFC822NAME || + type == GNUTLS_SAN_URI || type == GNUTLS_SAN_OTHERNAME_XMPP || +- type == GNUTLS_SAN_OTHERNAME || type == GNUTLS_SAN_REGISTERED_ID) ++ type == GNUTLS_SAN_OTHERNAME_SRV || type == GNUTLS_SAN_OTHERNAME || ++ type == GNUTLS_SAN_REGISTERED_ID) + return 1; + else + return 0; diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42012.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42012.patch new file mode 100644 index 0000000000..1f43efc122 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42012.patch @@ -0,0 +1,48 @@ +From 8dcc6a1f48945997666ac9f10896819edd01a03b Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Fri, 13 Mar 2026 17:02:07 +0100 +Subject: [PATCH] x509/hostname-verify: make URI/SRV SAN preclude CN fallback + +URI/SRV SAN did not suppress CN fallback as required by RFC 6125 6.4.4: +> a client MUST NOT seek a match for a reference identifier of CN-ID +> if the presented identifiers include a DNS-ID, *SRV-ID*, *URI-ID*, +> or any application-specific identifier types supported by the client. + +With this change, certificates containing URI or SRV SAN +no longer pass DNS hostname checks via CN fallback +to avoid potential misuse of such certificates +beyond their original purpose. + +Reported-by: Oleh Konko +Fixes: #1802 +Fixes: CVE-2026-42012 +Fixes: GNUTLS-SA-2026-04-29-7 +CVSS: 6.5 Medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N +Signed-off-by: Alexander Sosedkin +CVE: CVE-2026-42012 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/8dcc6a1f48945997666ac9f10896819edd01a03b] + +Signed-off-by: Jakub Szczudlo +--- + lib/x509/hostname-verify.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/lib/x509/hostname-verify.c b/lib/x509/hostname-verify.c +index e7597ad3b0..d989bb1abc 100644 +--- a/lib/x509/hostname-verify.c ++++ b/lib/x509/hostname-verify.c +@@ -108,8 +108,9 @@ unsigned gnutls_x509_crt_check_ip(gnutls_x509_crt_t cert, + * that we do not fallback to CN-ID if we encounter a supported name + * type. + */ +-#define PRECLUDES_CN_FALLBACK(san) \ +- (san == GNUTLS_SAN_DNSNAME || san == GNUTLS_SAN_IPADDRESS) ++#define PRECLUDES_CN_FALLBACK(san) \ ++ (san == GNUTLS_SAN_DNSNAME || san == GNUTLS_SAN_IPADDRESS || \ ++ san == GNUTLS_SAN_URI || san == GNUTLS_SAN_OTHERNAME_SRV) + + /** + * gnutls_x509_crt_check_hostname2: +-- +GitLab + diff --git a/meta/recipes-support/gnutls/gnutls_3.8.12.bb b/meta/recipes-support/gnutls/gnutls_3.8.12.bb index 3ad011742e..8716c929e7 100644 --- a/meta/recipes-support/gnutls/gnutls_3.8.12.bb +++ b/meta/recipes-support/gnutls/gnutls_3.8.12.bb @@ -37,6 +37,9 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar file://CVE-2026-42009_p1.patch \ file://CVE-2026-42009_p2.patch \ file://CVE-2026-3833.patch \ + file://CVE-2026-42012-pre1.patch \ + file://CVE-2026-42012-pre2.patch \ + file://CVE-2026-42012.patch \ " SRC_URI[sha256sum] = "a7b341421bfd459acf7a374ca4af3b9e06608dcd7bd792b2bf470bea012b8e51" From patchwork Wed Sep 9 13:35:34 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Jakub Szczudlo (Nokia)" X-Patchwork-Id: 97730 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 944C2C79FB7 for ; Wed, 9 Sep 2026 13:35:38 +0000 (UTC) Received: from AM0PR02CU008.outbound.protection.outlook.com (AM0PR02CU008.outbound.protection.outlook.com [52.101.72.38]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.12382.1788960935098385025 for ; Wed, 09 Sep 2026 06:35:36 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nokia.com header.s=selector1 header.b=CsGMPssN; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nokia.com, ip: 52.101.72.38, mailfrom: jakub.szczudlo@nokia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xAE9NL3SIOSeWVPDml3r1snMZ+0WrS3M+5SHMELaDyvMM9jAfFnX+GdXWGd9rqwEK0c7c4MnI7A9bz++ugiyyr/puOUO3walyCrIaiJepT/sp5MX+ZWlqu3+jGFngGes9/ft09I6UqJH9oo2GrIN7tK1eMQQyWzFa4NJV619g5lFCIlnWIp29c13RRZqDnUvcuVoNAs89PB+/kDYz/BTc+3cvhjZw4GRlQpHBKJ46DGoQTes/paJ0JqTduNw2KTo5hH/HdwIhHVBgfEmDE9uBti4LDckYCOvrKfbKfcZrkn79P0h1+skW2B7V7tpZEU7S4WA/iK4Gx4x8QwQg03+GQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=nThAPvORKzEcFvIN4OF4IvMlggYlsSqBlPuT6JSa+Lk=; b=MsjkkU0R7n4K2q/AuIMDVePY3SwtQgbV6qok/eYS3Jay60TQxtKHnzKWo9EryXPesk5MWKI8Ioq7IRzW+txwKVpB9Z55dH4V7W+mnI5URI4/+wa7bn+eTJ7vGdadw2CEvgA0S74s0fovJQ/3CJ7jljwCxCnB4ZM+etTEKvnfJ5ex/qShJRdqLd053sslN4E7iIZSrgOLTwO/ZU7wIDu/YdsbF6qlbkY6gO2Xa6uCwcHiz2nOBmTcsyyJAzt9V28Hg4zriSXjyHT0XP7zs/V6f6offBh3gsG3mMI5Ur0AcTzOuhDk3HXd8FxdCxhdIVcdTzTLDi5AN6bBJKE9Rc92AQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nThAPvORKzEcFvIN4OF4IvMlggYlsSqBlPuT6JSa+Lk=; b=CsGMPssNcjmZWux9wIBzP0HLpeyUSLwDelCS/hVxGu2hbybX+hACO4619jVyKad3Pv3BFeEy/Cn3sTaI193JZo2XbOOsXP/YULQ0K8NcRFc11fPkgMYmUQ/lqi1g7fwNEbgPET5LWlIRbHfrqOp1fv4HtclCEkI20zMsTNR6ZtzlulLKJ8xLZ+h5VLbIzAbEUqpIW8Gv/f1Dl7LkV8QND6BF1FlFLfWiWyCtTP22EQpsx3dXL1W6OvgKnjvz/N8sNEedg3RD6ayQJIN4ewkAIdnq/ESA3ls158GX/BnDCXLLP+GpUoJ4N/Ld2B3EdNcpYJN9Imv9nkTQgB4sE6yk5A== Received: from GV2PR07MB11919.eurprd07.prod.outlook.com (2603:10a6:150:357::20) by VI0PR07MB12084.eurprd07.prod.outlook.com (2603:10a6:800:33b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.7; Wed, 9 Sep 2026 13:35:34 +0000 Received: from GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680]) by GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680%3]) with mapi id 15.21.0360.008; Wed, 9 Sep 2026 13:35:34 +0000 From: "Jakub Szczudlo (Nokia)" To: "openembedded-core@lists.openembedded.org" CC: "yoann.congal@smile.fr" , "Jakub Szczudlo (Nokia)" Subject: [wrynose][PATCH 2/5] gnutls: fix CVE-2026-42013 Thread-Topic: [wrynose][PATCH 2/5] gnutls: fix CVE-2026-42013 Thread-Index: AQHdQGAX63mB9v3EOUq9c4+y3MP9Dg== Date: Wed, 9 Sep 2026 13:35:34 +0000 Message-ID: <20260909133510.3286-2-jakub.szczudlo@nokia.com> References: <20260909133510.3286-1-jakub.szczudlo@nokia.com> In-Reply-To: <20260909133510.3286-1-jakub.szczudlo@nokia.com> Accept-Language: en-US, en-150 Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: GV2PR07MB11919:EE_|VI0PR07MB12084:EE_ x-ms-office365-filtering-correlation-id: 99ea616a-df76-4bf1-345f-08df0e7739ce x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|23010399003|376014|1800799024|38070700021|11063799006|10067099003|56012099006|22082099003|18002099003|12006099003|3023799007|13003099007; x-microsoft-antispam-message-info: gEz8ZM46dFjbVgA+8vfVUv3Q67uRepr7SOz8KBv2G27naeaDpj2oJHpxyXMYCTq1aDO896Fhv0Be4ynsUbqEXgI+BCmR5kIdaIk3fdxtquL+GIYfX3zfAokILxnEl72h/jfHRR2+g5OzEpXzS+YewoY/w7/37O/+t+Il/gOb2rOf5YHBuRQTTOUUMIqIbD/Me45FeuTzKxu/dbQuYUC49fEsVSzBf0gb2CiT5IHyxNXErxhL8mVZomgjy8BXTgoHRtX4TLWj7/Iv4iZ+HtGcGr5yPdz1oaqXUC9LEwnqjk1HbnYWa8xeOwx+rnbDip6rtU+7iot2C0+nyrRaBM1ggb+X/118Bks0WT+QHr4juJjbWqiTKKVBqynl/kq3ezuCw5R0jc5r7s9Vm/kfrhLUPy5C/jcdYLwlxStVRVslMoSxve5c2v9sHOX3m23lsPu9hPJKihivXl8Ji+tahGdWPEgIXeqSLNGp/5JMb+YUOchNgmoBfs2JqAnfkTzF4L3nefj08brSZdERtZgVzEv+EediN9lzS11LExxa04B1BSGk60KpdfSYzJuoSe7djEbtBDaoWZ3baLfwaVaNwCZcO1kuf7WUHRXvYyNaLGCzlYqGHvNcFgF5+VVLz2pY7ljQ3TlGufwAP3noXLemsObax4672i7tuXB0bJFPSdTsropeV64Twlq1cFy0Q3/C4UsKfRpwyIG9LvetF4qGiyUSMIrSRL4lLdtwaPPBQTZyliU= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR07MB11919.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(23010399003)(376014)(1800799024)(38070700021)(11063799006)(10067099003)(56012099006)(22082099003)(18002099003)(12006099003)(3023799007)(13003099007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?q?98KEoQNIIwNoLb8CSPATWETzb1Mf?= =?utf-8?q?ikOylzmsb0/DI3drVpUPj0EHfHbPA03cfe15OpwBil3BQ0xxxGJ+RdGKHDC9BGlBt?= =?utf-8?q?RL99OPiPYG/B8R3FzssbFfphHXLm5qp+ZcLjUjz/AkmU3UzSrJyM7lsdDF2wsl833?= =?utf-8?q?M27W245ITwWH6NkabjvYY7mfMkpl8ILoiV6PKyBHa/9xpRHtwkWzxrMelBT1wlNGn?= =?utf-8?q?awBCyDawks8QQ4yNcWlGXr9wM/4451g0MN9QE15eGaRGEuiBv7KDyrQNGCS+7i3Ug?= =?utf-8?q?mLSpSS+odoiUO332IpCyNMOQ+IIrX/KrrlRyJB3ZGhp5PCl/mwC39ae7j8uC4NT6v?= =?utf-8?q?H2NS0fDMoJ4YZbtsFgk82xfDPF7NkFLdsSF5nc6TflKCPwaRYTv4+gRD9Zsew+x37?= =?utf-8?q?56UrT3r8ZzcFX6UOV/go4Yo11Q/OAvD1fLZ584ESH95Wun2Mpc8zDKPAUtJslMTnT?= =?utf-8?q?MjLet8Wi7qocMJgY8Z1E6wLhMGv33HL6tjITwycboa5fbt/B1PZZM0mMUr9ITSeuw?= =?utf-8?q?eSH9KK+Vtx4awwOWmvU/5HkPs3WKnuB0KFprSBAxrysQb6lmqt3NauG4HPmDFe5DW?= =?utf-8?q?1VNQxm0tDIESAB4cICxFoCRXvR6+PgSKB4SrDFNHTgfed9SZmG+bIF96ULuGdurCf?= =?utf-8?q?u/f6/ymchccyl0B9qj1eXHD1Sd5ldXs8jIxz4SwVLYHDQL/Jw1sLh6cxYzJuR4Ysp?= =?utf-8?q?gtXXyxaobYJPtTepJ/7eEYKmLOz7OPlkc7xX/eJ9mrARC3VQJ29Oel+LfsoC4wpvl?= =?utf-8?q?aaYLUTw8vEIcIVix71xpkQLQRsgfi7zWstb93Cn2VKhz2ePl0AVutdQN2n42G/s/h?= =?utf-8?q?9FHCH85reuIyzh/F0NIMLln2zZ2A5rX8oxvrYOI6EC+VDRSETXMBxqo8gjYaciDpU?= =?utf-8?q?HcBQRANQPIaBXDnr7B74Q5duqUEAB5mAcvrkC2chuupLFJwCyQgeF60auN3hNrW12?= =?utf-8?q?zLHlPj3AO5HcX0p6ENiPWsP9ZFDOVLIC8CHyon7clTuTQfZemXNpImU06OFXbYv+j?= =?utf-8?q?oGDCDwpwnssft2VYTobrZ/W1jZTDs2QStvm6SNtjSd4/T4CaN9hWGz7oTWXXdsJQg?= =?utf-8?q?/FIpoQX4mkFiwJMcLgXgxx0xfa2gUjxfSMiUGy6rTUKsFS33zMaafnbWiDgLE+VIN?= =?utf-8?q?W4z1znSxeh1E6i9xYRkm8Aw9AljvUQioRs1KykdfF1wFTLunCmKFS9hUvToacJzNm?= =?utf-8?q?LKMj/RXkT4t+i2pNUVb4uWhARMT/FR7xdb07fV0qULlL/nMRK+x+nds8y4/wFXLrs?= =?utf-8?q?widA5oQaXDvOTUzfH9G1niNbwYiqJ+X9vRksANiBUpS0ju4qjdNkN1whfQvzf4qbG?= =?utf-8?q?KLFO9qaL3s8kCWNQQwLiQzEEPlPAVhOExb2SVX8YK1yWzxnH180SPQurx1TJV8nOI?= =?utf-8?q?jEAf3KIIxAMWrfad6FhUt1dRd1NBKfzxgznjnG2YyYBhqOsve0CUuppukH5a3Q62k?= =?utf-8?q?eJ7ofEy2x7sOP40TOw1WW4OhEKvYEbMtVFLqrflP2+GSRKE5AHit8o8wUC8Fkj3pK?= =?utf-8?q?wGNV8pT8Jrw9Cu/DE6zkS7Pq7csf+5KwE53hkKMn2098+kUyeQuHJOmVMcrExhf9G?= =?utf-8?q?1poNKYtvJhE9yHhPnGmHDwUQOQ3tbvhn6SjHLx7v4GlvN/ERHFKFktKZ+zRv5GWWL?= =?utf-8?q?cbkexfdZ69zfs2OAXn9hAu7dxyHNsUjw=3D=3D?= Content-ID: <96352C724D201C4384F373CC82C09ABE@eurprd07.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: GV2PR07MB11919.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99ea616a-df76-4bf1-345f-08df0e7739ce X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2026 13:35:34.3522 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: izOAs4RWyMGKeP/9rgUX40BAZ3/S9DhFIo0etP8+omhRNoeVTIQ1om0sTlEIA0A5iFTojvqqlSBIQaXhmbzWSrFzNZ3k5+fafdYol6Ovs+I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR07MB12084 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 09 Sep 2026 13:35:38 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/245464 Backport patch to fix CVE-2026-42013. References: https://nvd.nist.gov/vuln/detail/CVE-2026-42013 Upstream fix: https://gitlab.com/gnutls/gnutls/-/commit/29801bef00ecc0f23c0bac4cd333b269cd2c1af4 Tested with ptest Pre patch taken from upstream so CVE fix will land cleanly Signed-off-by: Jakub Szczudlo --- .../gnutls/gnutls/CVE-2026-42013-pre1.patch | 56 ++++++++++++++ .../gnutls/gnutls/CVE-2026-42013.patch | 74 +++++++++++++++++++ meta/recipes-support/gnutls/gnutls_3.8.12.bb | 2 + 3 files changed, 132 insertions(+) create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42013-pre1.patch create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42013.patch diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42013-pre1.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42013-pre1.patch new file mode 100644 index 0000000000..53687cb53b --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42013-pre1.patch @@ -0,0 +1,56 @@ +From 3ee2cb707002f755e4bda3f75285caa0cb36c214 Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Wed, 15 Apr 2026 15:35:59 +0200 +Subject: [PATCH] x509/email-verify: call fallback DN fallback + +A comment was inaccurately referring to DN email field fallback +as CN fallback. +Rename a few things as well to match x509/hostname-verify more closely. + +Signed-off-by: Alexander Sosedkin +CVE: CVE-2026-42013 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/3ee2cb707002f755e4bda3f75285caa0cb36c214] + +Signed-off-by: Jakub Szczudlo +--- + lib/x509/email-verify.c | 12 +++++------- + 1 file changed, 5 insertions(+), 7 deletions(-) + +diff --git a/lib/x509/email-verify.c b/lib/x509/email-verify.c +index dbef0bb86e..3c22ffed37 100644 +--- a/lib/x509/email-verify.c ++++ b/lib/x509/email-verify.c +@@ -42,7 +42,7 @@ unsigned gnutls_x509_crt_check_email(gnutls_x509_crt_t cert, const char *email, + { + char rfc822name[MAX_CN]; + size_t rfc822namesize; +- int found_rfc822name = 0; ++ bool dn_fallback_allowed = true; + int ret = 0; + int i = 0; + char *a_email; +@@ -76,7 +76,7 @@ unsigned gnutls_x509_crt_check_email(gnutls_x509_crt_t cert, const char *email, + cert, i, rfc822name, &rfc822namesize, NULL); + + if (ret == GNUTLS_SAN_RFC822NAME) { +- found_rfc822name = 1; ++ dn_fallback_allowed = false; + + if (memchr(rfc822name, '\0', rfc822namesize)) { + _gnutls_debug_log( +@@ -102,12 +102,10 @@ unsigned gnutls_x509_crt_check_email(gnutls_x509_crt_t cert, const char *email, + } + } + +- if (!found_rfc822name) { +- /* did not get the necessary extension, use CN instead +- */ ++ if (dn_fallback_allowed) { ++ /* did not get the necessary extension, use DN email instead */ + +- /* enforce the RFC6125 (ยง1.8) requirement that only +- * a single CN must be present */ ++ /* only a single one must be present */ + rfc822namesize = sizeof(rfc822name); + ret = gnutls_x509_crt_get_dn_by_oid(cert, + GNUTLS_OID_PKCS9_EMAIL, 1, diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42013.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42013.patch new file mode 100644 index 0000000000..c63e4d7039 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42013.patch @@ -0,0 +1,74 @@ +From 29801bef00ecc0f23c0bac4cd333b269cd2c1af4 Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Wed, 15 Apr 2026 16:02:19 +0200 +Subject: [PATCH] x509: prevent fallback on oversized SAN + +Passing oversized SAN did not preclude CN (or DN email) fallback +during verification, which is an RFC 6125 6.4.4 violation. + +Now oversized SAN are skipped over, +but prevent the fallback from happening. + +Reported-by: Haruto Kimura (Stella) +Reported-by: Joshua Rogers of AISLE Research Team +Fixes: #1825 +Fixes: #1849 +Fixes: CVE-2026-42013 +Fixes: GNUTLS-SA-2026-04-27-8 +CVSS: 6.5 Moderate CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:N +Signed-off-by: Alexander Sosedkin +CVE: CVE-2026-42013 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/29801bef00ecc0f23c0bac4cd333b269cd2c1af4] + +Signed-off-by: Jakub Szczudlo +--- + lib/x509/email-verify.c | 14 ++++++++++++++ + lib/x509/hostname-verify.c | 14 ++++++++++++++ + 2 files changed, 28 insertions(+) + +--- a/lib/x509/email-verify.c ++++ b/lib/x509/email-verify.c +@@ -75,6 +75,20 @@ unsigned gnutls_x509_crt_check_email(gnu + ret = gnutls_x509_crt_get_subject_alt_name( + cert, i, rfc822name, &rfc822namesize, NULL); + ++ if (ret < 0) { ++ if (ret == GNUTLS_E_SHORT_MEMORY_BUFFER) { ++ /* oversized SAN; proceed without DN fallback */ ++ _gnutls_debug_log("oversized SAN ignored, " ++ "disabling DN fallback\n"); ++ dn_fallback_allowed = false; ++ ret = 0; ++ continue; ++ } ++ if (ret != GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) ++ gnutls_assert(); ++ break; ++ } ++ + if (ret == GNUTLS_SAN_RFC822NAME) { + dn_fallback_allowed = false; + +--- a/lib/x509/hostname-verify.c ++++ b/lib/x509/hostname-verify.c +@@ -213,6 +213,20 @@ hostname_fallback: + ret = gnutls_x509_crt_get_subject_alt_name(cert, i, dnsname, + &dnsnamesize, NULL); + ++ if (ret < 0) { ++ if (ret == GNUTLS_E_SHORT_MEMORY_BUFFER) { ++ /* oversized SAN; proceed without CN fallback */ ++ _gnutls_debug_log("oversized SAN ignored, " ++ "disabling CN fallback\n"); ++ cn_fallback_allowed = false; ++ ret = 0; ++ continue; ++ } ++ if (ret != GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) ++ gnutls_assert(); ++ break; ++ } ++ + if (PRECLUDES_CN_FALLBACK(ret)) + cn_fallback_allowed = false; + diff --git a/meta/recipes-support/gnutls/gnutls_3.8.12.bb b/meta/recipes-support/gnutls/gnutls_3.8.12.bb index 8716c929e7..2f671c4886 100644 --- a/meta/recipes-support/gnutls/gnutls_3.8.12.bb +++ b/meta/recipes-support/gnutls/gnutls_3.8.12.bb @@ -40,6 +40,8 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar file://CVE-2026-42012-pre1.patch \ file://CVE-2026-42012-pre2.patch \ file://CVE-2026-42012.patch \ + file://CVE-2026-42013-pre1.patch \ + file://CVE-2026-42013.patch \ " SRC_URI[sha256sum] = "a7b341421bfd459acf7a374ca4af3b9e06608dcd7bd792b2bf470bea012b8e51" From patchwork Wed Sep 9 13:35:38 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jakub Szczudlo (Nokia)" X-Patchwork-Id: 97732 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6ABA8C79FB6 for ; Wed, 9 Sep 2026 13:35:48 +0000 (UTC) Received: from DUZPR83CU001.outbound.protection.outlook.com (DUZPR83CU001.outbound.protection.outlook.com [52.101.66.44]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.12384.1788960942524651097 for ; Wed, 09 Sep 2026 06:35:42 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nokia.com header.s=selector1 header.b=Pau9P/Sh; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nokia.com, ip: 52.101.66.44, mailfrom: jakub.szczudlo@nokia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dwq+zSRH+OFs0KsSmOJU00HPl3CwTkyaQtHv8jPGPWxoEqwjMZiE/ae4o6r1orGJMpEDSLZeXhy0OntoufRw6slVquO0K8AHDfje3nSrwzAc5pw/ythYyeigh1uwhkXfxrxglIk/BRMon1E7M9KxW+TNdz5aetVUPKThtclqDyRL9xKwLoKk9LrPB9+ncSB2DoAT/1L+xV/9kFEP0wYeDGtG7eJPpOo7GQ1zwrPwt0d2sIMnZen9WViWVQv1c9oMIPRv/0QcTelIK0rjoUIsZaFcN8LFZdoB+Q9OtDfbqNdBHssdkkPokAosD55oO1fvqv1k5biUV3kERi1/8cuBUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jILRlPW0mmQGlCDVIvCq2bhEZhj0N9kJKspCP5U6BY0=; b=yGUsOW4ntAoWqcscLd4/oN7wTO9MZahQ4+DnpWiOj4ZirC87gIGj2wN/xfXma5gQ7Rkf0ZsavPl6p66Dc5AI9C0FTaRux7WkFKIhps9BGcyIj2edupHPywToF/XKxxvAFSqutWS/Vm7d6ZJxM7KM4qQsjwGmSEsEY2lmfLRpBkAMQ7GiFrBYH31mkmWHjkmUsMOfz0d6Zb1MnDpAEjn1VcUWLPrx+b6gvqcR2QQWkpLO3aMMl6f6AAHO8cket718vVTzP3AlViCsUpl835GaXACfs3LLtPB8aOVIyEMkK0S1/B2Xx2SvQI7X2pkk0859zQBemovJ2pZZHShMfsfr4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jILRlPW0mmQGlCDVIvCq2bhEZhj0N9kJKspCP5U6BY0=; b=Pau9P/Sh7q2Zh/Nqq/qj5EWQPywnhkLoJ9irqVzCjAkFNndriQB2aecvuE0fPqTYsL+TT50o+GtAc9PMIeVg2cphE0b6CR8IjZ8DXKUyzrzBKiRo5lagHltqdYsDjIy4VxkK57xgoOzoww/Y9Nmzio3uNGRy4XRkeLWT3TKYXUgjXeOlgWciENjOApnJ6QI7hYqg0858c6ta9MZ5fkLwYxhTNvngIySP7eNVndEam/erS026/yWDskAQoB6Yox0/lKnWqUR0Do1VHOLT4Y0pALHXTq3GvQkm0v4bM6y8QHVOnCPAE7E7gsHeU0KsxmQ6wzSevRH6Jxgf+lKqvXzFXQ== Received: from GV2PR07MB11919.eurprd07.prod.outlook.com (2603:10a6:150:357::20) by VI0PR07MB12084.eurprd07.prod.outlook.com (2603:10a6:800:33b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.7; Wed, 9 Sep 2026 13:35:38 +0000 Received: from GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680]) by GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680%3]) with mapi id 15.21.0360.008; Wed, 9 Sep 2026 13:35:38 +0000 From: "Jakub Szczudlo (Nokia)" To: "openembedded-core@lists.openembedded.org" CC: "yoann.congal@smile.fr" , "Jakub Szczudlo (Nokia)" Subject: [wrynose][PATCH 3/5] gnutls: fix CVE-2026-42014 Thread-Topic: [wrynose][PATCH 3/5] gnutls: fix CVE-2026-42014 Thread-Index: AQHdQGAZUH1mouyWIkOcyqVFmZOkJg== Date: Wed, 9 Sep 2026 13:35:38 +0000 Message-ID: <20260909133510.3286-3-jakub.szczudlo@nokia.com> References: <20260909133510.3286-1-jakub.szczudlo@nokia.com> In-Reply-To: <20260909133510.3286-1-jakub.szczudlo@nokia.com> Accept-Language: en-US, en-150 Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: GV2PR07MB11919:EE_|VI0PR07MB12084:EE_ x-ms-office365-filtering-correlation-id: 2ef7fdc4-606d-4d42-cf4b-08df0e773c3f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|23010399003|376014|1800799024|38070700021|11063799006|10067099003|56012099006|22082099003|18002099003|29003799003|25016099003|12006099003|13003099007; x-microsoft-antispam-message-info: 7sUN3olCfuzLP0xVrSiQREoUsdnioerC+M56dvxHhu+RB5NaCiLNKQ8ibDhDawyK6GJIt48VvO8gjhLK2XCMXBoPuR77sEurISxrhb5DoTzD1/SKF/8J91kBGNiol4ji/l9yqMey6nxG39wDXFxloKt9XNsUCpL2MzkyK4T4SM8eVSbkeKURnp30j8CiF226TuG3mmMpV6toL85ldjuThDjIEL8990jLcTlM+/4DLMZtOG7HDaut/ryL0noMslgQPod1u4jx3I+Bc3C6Nk+peSzQ9yn99tKaKsMwOdLV+JW4JfwYzDhF5R4xgAhHeuZqZ8bIpRfBokcKx7luKcPqVvtYQH+H458v7rdccH5Vs3YF3GJJQcY4AWWGG4irzLeyS2lQrlwv8vw9KPvxaNzKwINTo2ZPAI6oiyORuxbfiHWvTYCNKV5XDdZyTegL7gp7AlJ3yypRAjfAmcZpx5nOFLdpTzId+BNXrBqy1TXvQMPaDcC+PwcrWG9Z4nWdLeNfywiFRIsGuijSpvr7t5eeQFae/N/UPS+VCaVISHgG2nQ+qUBZLd5kRngWT7uN759t5V4ZoILZroukkenCxsRoXFIyuoYI71RQpDiw5p2ko2aoiIjoo3j7HD67oAHP/LPJWyWMm9Omxmpwn0Cs4OaWH/z91jjbUg/wYO+/mAlJmFo1FWN92pX7s7+IkBNt9xFtYu+a7jlNeRMFmWntSG16uuuNmk8qnTtPQr6EWW89CF4= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR07MB11919.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(23010399003)(376014)(1800799024)(38070700021)(11063799006)(10067099003)(56012099006)(22082099003)(18002099003)(29003799003)(25016099003)(12006099003)(13003099007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?CVp2pfmsQQkHDpXwgSa3JAg?= =?iso-8859-1?q?C6KkDE6vqldOm0UEahVF3OwSYiNi0qFTXiPIMBZ7MiLxVcr60bFd/JFdkrqT?= =?iso-8859-1?q?Navb6em6FEazuuJf8Rgz7RGmcCOaizprsZF+6/R9lApK/1TyVI+R0EfcwUrK?= =?iso-8859-1?q?Hp1sEphGbKx3jIt86bcjyt6SdcV0TcL/9r607AWY20WVJAQJRsKWYgDfl+Z/?= =?iso-8859-1?q?YI5pICoM8QGtEAL3yDOA2sM7g9qSRomM76EWZCI6P9izJyMENyseHY0a5knN?= =?iso-8859-1?q?zEmSEls0+Q4LwwmKv6fz2tzwcCsqxhfOlWroPc8eauxqnEVuLjjCFdnetien?= =?iso-8859-1?q?sFnlY682MikD6BT3ucLE04U9S9iKNjX5c4ySWF6I7L9YzO4pJWPc1yLe3Bhg?= =?iso-8859-1?q?32EPluiz5Nnq7R17FO6oMLx53CJGPu2QvmE6r/sL792vAqO7WOpMICk2A0pP?= =?iso-8859-1?q?mfE3kz8qwWY3yS6ZTxdvZFONifDvHGDqjsodF+3pn2zYhoMm/FO2p60yQhLL?= =?iso-8859-1?q?Oi5iSDCIs17JP308t34QlEQyRt9Gc6MDt1uflfBNLluCI7lPn277NGE7muKk?= =?iso-8859-1?q?b5EK142oBCb07fJ5Wpy9heAL+Cojf2GBDBNAgas2RKNVULBoYqouApQZwYg5?= =?iso-8859-1?q?sSMUGzgORZuaC2Qmy9CON0EWwqT3XzhkoGLgDMr8lFaIQz08UxFXnoFQhzm0?= =?iso-8859-1?q?tt/6Ic3NP/h4nT1nUklhbqoNnR5akzWxDU5FlbFmGhaLy6p39Y/53uyAEcmi?= =?iso-8859-1?q?aG8qy/uv+7g1Fgw1WTk0hGDSlnoxpDVUkP3+MgBKTyTaFseDpKs6vO7yFuwp?= =?iso-8859-1?q?i9k9JjMSGZgeOjsrpC9c0+Gw569m2LjmHkkSA7LOduzEQwHXP+XPlruOPKKB?= =?iso-8859-1?q?SbNLKb4Tud8G0dWunDwGNqNFnbVjtAMVVDTv9xntf9WcW1EOsYKWtDQViUwU?= =?iso-8859-1?q?O0qXd4YaXh7FOsWRRPusVhCvYfzWlj3SgUUsBMSlphvQFW6eSonsX5Z/GBLP?= =?iso-8859-1?q?s46dvpfeBZuvs8MEXeP3gQCzkUtHH82SoF8Ml3qqfPZBR6a7aWvMRIuvBza6?= =?iso-8859-1?q?rPjlFgtLy6QggkJBpPkpYRvxDMA6oMIIYWZC3xk/RHlLOFsBvGRCmRRKdZ5e?= =?iso-8859-1?q?+3HSnOxLtZcMROzNi/p4/6D0sIZNZAU4K5ipSD+qULLc1akJQopInr8u3oIf?= =?iso-8859-1?q?drlFnno1TxpSh/gPJb0nFvbcKsZDFIvlWUUwe9nAn4yVZ8cH/SlrFwd4D3gs?= =?iso-8859-1?q?X8/tQUzpvLKm0G8DdwrSbOnUtuJo0NoTWbEZi4llUzOlohjKVvIVDjt/Hm6/?= =?iso-8859-1?q?eBP54LXkJb1WUasCpi6g1PFlxh/nfp03Cw0aa8Cm7R+xjHvNPHfD012whv2q?= =?iso-8859-1?q?QAvC32RT/hcpNHhamJ+Cfs3xFW6FjTUP4yPhNwy6tx2uNQbO8BhJbc1yGh7F?= =?iso-8859-1?q?xCfWDkfWyXSVxv1GTQ9LDTeI7T0lQ22NeoP8fHS1fUmu0K7rX0NvMDEVnQV8?= =?iso-8859-1?q?qPV7NVqJLGH11Dp83kAKzd+Apxv0mXQocKvWwA/aTXoc8kVUn2p1N/sjMD12?= =?iso-8859-1?q?5s3GgCztRNvKwUMhXt8WhS3Lg95sx11cWk//ler7F1l9wgPnFQMC9HiMJKOA?= =?iso-8859-1?q?QDyq2+t9I4qbtSN05VIGkg0C/uXpRCQcGHEK5FCV8YICCf4aJ479jjUo9a3s?= =?iso-8859-1?q?FT9wj6M6RlyyU+EBfMmrgXhIIG40gXhZ8VQRZFRo2HDbrXwxf9EyBRLI1SB0?= =?iso-8859-1?q?BpjTPije9DJToQOWwbu0gLehyUKqb81uRI7BVQWZUeE+U8Q=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: GV2PR07MB11919.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2ef7fdc4-606d-4d42-cf4b-08df0e773c3f X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2026 13:35:38.4278 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 3iej9WSmokACUseVHV7dlZmq+nx1sqoyXkRZDj3dX1jW5Qlym+vljigDzK0NSpz+tMKCn60AZUkXUhC4Owf3Att6WiBMZBY4TmI3x6VhbrU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR07MB12084 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 09 Sep 2026 13:35:48 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/245465 Backport patch to fix CVE-2026-42014. References: https://nvd.nist.gov/vuln/detail/CVE-2026-42014 Upstream fix: https://gitlab.com/gnutls/gnutls/-/commit/3957f136e2ed23caf176a594b54b3827f5cef701 Tested with ptest Signed-off-by: Jakub Szczudlo --- .../gnutls/gnutls/CVE-2026-42014.patch | 60 +++++++++++++++++++ meta/recipes-support/gnutls/gnutls_3.8.12.bb | 1 + 2 files changed, 61 insertions(+) create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42014.patch diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42014.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42014.patch new file mode 100644 index 0000000000..776733829a --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42014.patch @@ -0,0 +1,60 @@ +From 3957f136e2ed23caf176a594b54b3827f5cef701 Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Wed, 18 Mar 2026 18:19:06 +0100 +Subject: [PATCH] pkcs11_write: fix UAF and leak in gnutls_pkcs11_token_set_pin + +Changing Security Officer PIN with gnutls_pkcs11_token_set_pin() with +oldpin == NULL for a token that lacks a protected authentication path +led to a use-after-free. + +Reported-by: Luigino Camastra and Joshua Rogers of AISLE Research Team +Fixes: #1766 +Fixes: #1809 +Fixes: CVE-2026-42014 +Fixes: GNUTLS-SA-2026-04-29-9 +CVSS: 4.0 Medium CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L +Signed-off-by: Alexander Sosedkin + +CVE: CVE-2026-42014 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/3957f136e2ed23caf176a594b54b3827f5cef701] + +Signed-off-by: Jakub Szczudlo +--- +diff --git a/lib/pkcs11_write.c b/lib/pkcs11_write.c +index 64b85a2..1dff578 100644 +--- a/lib/pkcs11_write.c ++++ b/lib/pkcs11_write.c +@@ -1266,10 +1266,9 @@ int gnutls_pkcs11_token_set_pin(const char *token_url, const char *oldpin, + ses_flags = SESSION_WRITE | SESSION_LOGIN; + + ret = pkcs11_open_session(&sinfo, NULL, info, ses_flags); +- p11_kit_uri_free(info); +- + if (ret < 0) { + gnutls_assert(); ++ p11_kit_uri_free(info); + return ret; + } + +@@ -1290,9 +1289,11 @@ int gnutls_pkcs11_token_set_pin(const char *token_url, const char *oldpin, + oldpin_size = L(oldpin); + + if (!(sinfo.tinfo.flags & CKF_PROTECTED_AUTHENTICATION_PATH)) { +- if (newpin == NULL) +- return gnutls_assert_val( ++ if (newpin == NULL) { ++ ret = gnutls_assert_val( + GNUTLS_E_INVALID_REQUEST); ++ goto finish; ++ } + + if (oldpin == NULL) { + struct pin_info_st pin_info; +@@ -1324,6 +1325,7 @@ int gnutls_pkcs11_token_set_pin(const char *token_url, const char *oldpin, + ret = 0; + + finish: ++ p11_kit_uri_free(info); + pkcs11_close_session(&sinfo); + return ret; + } diff --git a/meta/recipes-support/gnutls/gnutls_3.8.12.bb b/meta/recipes-support/gnutls/gnutls_3.8.12.bb index 2f671c4886..b8f653d210 100644 --- a/meta/recipes-support/gnutls/gnutls_3.8.12.bb +++ b/meta/recipes-support/gnutls/gnutls_3.8.12.bb @@ -42,6 +42,7 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar file://CVE-2026-42012.patch \ file://CVE-2026-42013-pre1.patch \ file://CVE-2026-42013.patch \ + file://CVE-2026-42014.patch \ " SRC_URI[sha256sum] = "a7b341421bfd459acf7a374ca4af3b9e06608dcd7bd792b2bf470bea012b8e51" From patchwork Wed Sep 9 13:35:42 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jakub Szczudlo (Nokia)" X-Patchwork-Id: 97734 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72A24C79FB6 for ; Wed, 9 Sep 2026 13:36:08 +0000 (UTC) Received: from AM0PR02CU008.outbound.protection.outlook.com (AM0PR02CU008.outbound.protection.outlook.com [52.101.72.32]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.12251.1788960945495230684 for ; Wed, 09 Sep 2026 06:35:45 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nokia.com header.s=selector1 header.b=WrLaXSjn; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nokia.com, ip: 52.101.72.32, mailfrom: jakub.szczudlo@nokia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GRxrlpwWtRruFuQ9IKF4gNtdS4qRAw1FhccwN00+QwwYjfZZGDiNoSbiA6buGRS2yeG3GF8w8P32DZRUq+47zyTqVOZ71E5+zKA3h93hM5aM1mg3+Zv8eXTqNYkuGKcR4bC4oj4hsS50aD4Z2GB5u6MOh01T//6bGU8a2Sys1jBCZ481ivMZYtzbpTTGOxD9/nPVeXNKh2gR+yptjiB6ryWHnnMCrN+kG4mKMtNQxl+7Isj5Wa80ZJV0qCF2vJOyVHNd4S5x7cB/ICgiEbsKUfYdePKztJGAL0WWQOhgzoKEOxAiPTNG+XvkQdSIAqdSsZIyZkIxb07eJS2DetWQqw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=F7hDcpMCZVX4fXQoy3Q5eoYENCNZZpfXwvMebD2eS3o=; b=Ikmf5W7GnVsO209aiOZOL4lRsM+aGY2IwiW/OZDxnRaDue1pjSQMcXW7GnB3dKPqkoLrCN4U/TUiV+uG6v9Z6Y6Oa2kmv8cTX/wLD0nKC4zWpGC8+suGLj3HimInzjgw4yhYVaBOP2+rh1TlcjJ97RJY9/Zh7i2rtG6DoMZu3gUUIPWXzqNDGHDE3IAWOu5/JVLc3Yaq7D8FGxYCdICHu7F7ER7COR5Xqx2OVJn0UosEcc9BvRD6yDGcTLBoTOeW+ZuuVSuBdg+30XimkulLpkqmoQUJjMoHsoCIdsH38oo3A4Q6fn5cDswQYahoaIFLfzHVb9socVdXfucobIVHvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F7hDcpMCZVX4fXQoy3Q5eoYENCNZZpfXwvMebD2eS3o=; b=WrLaXSjnJCyq4FG5uN9lDb1SPLtiP2KBxi36l8uRzc+wPGGOCcOLRcl+W9mpYQKsqJXDoUK3d3c64qeVrsDWJcUEyGaXtcpOqMSnZyag+YZbdM6lXWoiSCPeeaezUok2GuR1Fsng42oJb+bpKDE40vHM/tE3ypanUaPgEfigKQmAjNZKio93SgBDmz8UEu+2CC+0P+l3cF7ClTzJhwcckcw6o2q02nP0oTrfrO7bkSeAAF4HuZu4sKaGnEErF/4815SEwkgfo5zgedbeR9A/zlM9iCayuCZ/3IeVW6EmwOtWHzXuyfjV1yoxPNvr61/1xyzicK0lzj6jYtj0NK2bnA== Received: from GV2PR07MB11919.eurprd07.prod.outlook.com (2603:10a6:150:357::20) by VI0PR07MB12084.eurprd07.prod.outlook.com (2603:10a6:800:33b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.7; Wed, 9 Sep 2026 13:35:42 +0000 Received: from GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680]) by GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680%3]) with mapi id 15.21.0360.008; Wed, 9 Sep 2026 13:35:42 +0000 From: "Jakub Szczudlo (Nokia)" To: "openembedded-core@lists.openembedded.org" CC: "yoann.congal@smile.fr" , "Jakub Szczudlo (Nokia)" Subject: [wrynose][PATCH 4/5] gnutls: fix CVE-2026-42015 Thread-Topic: [wrynose][PATCH 4/5] gnutls: fix CVE-2026-42015 Thread-Index: AQHdQGAcV31BucPHgk6MVLh+JOfPrw== Date: Wed, 9 Sep 2026 13:35:42 +0000 Message-ID: <20260909133510.3286-4-jakub.szczudlo@nokia.com> References: <20260909133510.3286-1-jakub.szczudlo@nokia.com> In-Reply-To: <20260909133510.3286-1-jakub.szczudlo@nokia.com> Accept-Language: en-US, en-150 Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: GV2PR07MB11919:EE_|VI0PR07MB12084:EE_ x-ms-office365-filtering-correlation-id: 3d6f8f63-54cd-4991-2870-08df0e773ea5 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|23010399003|376014|1800799024|38070700021|11063799006|10067099003|56012099006|22082099003|18002099003|12006099003|13003099007; x-microsoft-antispam-message-info: pjjJkP5ja5IXWAThBZJeauHa/fLoGpXZJuGaApGJFWaKs0nVa2Kuo4WtvfGTauhQNiy5HTdkgTX03dDVB4tL8d8U2uuuJs5JDXGLa2t9//rq1xM5y3MzC9fG6NjbAMRtOVjoYBfdEUR52rHWvsAXejw+5bSxmpwtK9smGVKAANCsddMzzY9PzNg+pnwBNtVmPXetmuuCcc07uH/0pXRU4PltvbhhIbRgLVFAvCbxRginA9sMigGQ+3fAUtkUXubPv0CencFnXXk/WsvVc49ki9DilBp1AxV5YZeZtWqiWES54waUeYkigAyJu1lwuUZ1ffkK2WIX3Ll5/zVN6lCvqgfXrkwMBD2hRrDfe2fSfYJkA2W1YZd+vlYA6R1zUm28Og1gbu4ErogeaRskHfRTIUeChy1lxYorQ9ClPOswDK1AZGKpfwhblU6rELK4O/4Ly4nlMYPT/2OuJsmikNryfE3weB+VJ6XRDxaOssJ2vPwtW6Sm/2oHzT2v2FlbmHyDjJiRIH2KUsD4SXItMbYY3+1mr2nU+zgVYObbtX2b4PxlXDmLBfwWgwYP73V7RErGNb8/yLsMyukRROnePvmgzEoVZJTWxeGNtGSst1Ej1jBynfA111ovDY/JOMeJS8TCFsdQTFBTuNlJb8pbomWBaHoBsSN22fEPJTXdwiKH22hz11Mzkw94xo/6IZSA1s0pfnOfsemgfQfv5WQRXN1SAH+uIH7PsKwEqHxgWfsXWT8= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR07MB11919.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(23010399003)(376014)(1800799024)(38070700021)(11063799006)(10067099003)(56012099006)(22082099003)(18002099003)(12006099003)(13003099007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?uHP1xVi/A/LyV4ebBNWMyLX?= =?iso-8859-1?q?JmaIds8a7W7aQemD8pAQtmsJHLEnuViTXAr6F9mj0PnOk6Iffgi6gAumRZYK?= =?iso-8859-1?q?DH7F2eN2BgQgbSE1/vokojHiAeZQUhiQn34sO9DtcyhKJPaw4wKMzLmo8VFR?= =?iso-8859-1?q?Pe+7q5EKP6TUqfH/Iz2pUtMOmsJKEBt6wwx2UHVXxjwFiA+B6mO1tkJ5nznU?= =?iso-8859-1?q?c+57WrQXmpW+I/4+hijZ9LfFltm4+7EIvdqSJZTMaiaCnfMfJeGC/ZEstDtu?= =?iso-8859-1?q?nbyD6sP8EbfhmT0pzmWRt6tZOYsY3ZipzEOgXsc0bIamN1i+bq5ZjM6MNi9x?= =?iso-8859-1?q?4Yq/NgxN0/0Isa4HWwqVD2GiQXoUQFWhzcSgRdpXoxYRh4wGlrfUhTwUic/H?= =?iso-8859-1?q?KmkyDAvBYoCmNbUCNZJCcVNPQYvzqf2mET9ryOn4qt2c6qyL6ur/LeElMHmO?= =?iso-8859-1?q?04CSKoSBwPBc9BDBaQvSbFtW0oMB4H+gl2YoDCD45FKl6WYVmbVjOd4WWnmK?= =?iso-8859-1?q?xizZcJvca40XcsME+o7rDinnQCDIgCWN2XnYZMqzQEJA8kPt72gh69N8rlYQ?= =?iso-8859-1?q?SuYso9ll7Evlwg9FTscEWr1Vme78V0ieoi1e18SKD1CvZOUgTlDumxocZUsk?= =?iso-8859-1?q?ML7xq73xGRnDhhroODYLviOFUz7ZlaN1NyaDj0EOL1sIF9kT7tVT6Zg/vvkp?= =?iso-8859-1?q?P9VTSUcDR1HESIQ5m9RdDKLAovyOHigOy3d8HEyr5ggTqQ24223E54kvj8It?= =?iso-8859-1?q?KBegvZiXjfg+W8MD3DT7JaWvqGJz7IQf+hRrN+gG3MUZgNp6B207dqNEs0f4?= =?iso-8859-1?q?YCyXjQwsL5kkzHh6BNSP6KrJALVWDYqNgMBWehzWjxAWpfvHLGFdjklLkDeW?= =?iso-8859-1?q?PyClI34yG3goxaobvcoAEiw9SShcw/nrrP5LZiovW/cxhMWYH1jNPKY4K2Ax?= =?iso-8859-1?q?mpzr/zl2IVUY453QHWWo4of2CvlW7WGF3k+qJ3tTed8Kl4GPZrLMcGtkP+1L?= =?iso-8859-1?q?u+yDy8kWULDiTsziUOpKEw04PU4AA1J/L32puXjMfL1Z7mTv7ku3q5IWvWUI?= =?iso-8859-1?q?Cv1JEP98Z2LjQLTZ/wEn5NMOzT3hKQ9lHOURFoaKtR68TOU8894VV0NXWld2?= =?iso-8859-1?q?ZlWyyDrv8zcbk15wQXqp9rftCpDk4tz/b9gdBA0G8UGy20OpYIfy9WSpn1rk?= =?iso-8859-1?q?sioW1tUQz5bXOcGhoGbGUB/WH0NN9xlWyzX9RCCxJ7bS/1n2cxy1w1QftIWg?= =?iso-8859-1?q?OB90zqaf7WWx8yUW9vS8f7CreJHrRWabItyB3mqMUhHCI8CvJi35bmp1iHjQ?= =?iso-8859-1?q?5a3VLh+1rXZqB37IYxAoa1AEh7f3c6Je8XqNewzMTIGEU/m2HB+egSvfxOoS?= =?iso-8859-1?q?K36vhcHMpORHGQJfH3DgeBEU/qywyWlynNp+wrtSnJHW38puUZapj95YKuIu?= =?iso-8859-1?q?U5/dF1Su9Kh6wP55P+yGQWHrOMQulMjOTsxG1ATqDwZtagn3ndrBjhN2naf3?= =?iso-8859-1?q?dRfvV3KoaOet0TDHnTK3J1PaoVvWwD8NMhuTFI4me3jVCFzTmv4lX22q/Hwd?= =?iso-8859-1?q?9eEI+uBpKEnbxVcpPrOPoxfLXlRr841DQGDVnuinyMumh7tywT6w6SCLxK1G?= =?iso-8859-1?q?z/hM7dpmW2kC8kwa/828VtKB6Kmlmvq7Ksf0lVLJlVHZ8AiS8z99ELwfx6CT?= =?iso-8859-1?q?8r/v2Lp5NtU44+ADEC4XOSGB3d1rTHGajTxmG9Xdj5VJg+iRNcfhv37jbWbT?= =?iso-8859-1?q?ihwoDO7Eo05g7iQDfG5nIyP9N2QJ/O2cLOTHrjzKE6RxFAA=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: GV2PR07MB11919.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d6f8f63-54cd-4991-2870-08df0e773ea5 X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2026 13:35:42.4679 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: BkcBvGN8bPuMvqmVc3E1b+OE/FiOhwshnf+G29CrXQumVmrcBk1RloclSW5GzrQg6xuiEWjlhbtYp6jILGRaLEN0FQ31h7qzH+23k3PH4xQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR07MB12084 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 09 Sep 2026 13:36:08 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/245466 Backport patch to fix CVE-2026-42015. References: https://nvd.nist.gov/vuln/detail/CVE-2026-42015 Upstream fix: https://gitlab.com/gnutls/gnutls/-/commit/a3e7c50d3e1761e5ef1d4b225507cab8f2b2c3ca Tested with ptest Signed-off-by: Jakub Szczudlo --- .../gnutls/gnutls/CVE-2026-42015.patch | 43 +++++++++++++++++++ meta/recipes-support/gnutls/gnutls_3.8.12.bb | 1 + 2 files changed, 44 insertions(+) create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-42015.patch diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-42015.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-42015.patch new file mode 100644 index 0000000000..1a2065371d --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-42015.patch @@ -0,0 +1,43 @@ +From a3e7c50d3e1761e5ef1d4b225507cab8f2b2c3ca Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Mon, 20 Apr 2026 22:42:20 +0200 +Subject: [PATCH] x509/pkcs12_bag: fix off-by-one in bag element bounds check + +Appending elements to a PKCS#12 bag had a bounds check that +prevented adding the 32nd element. +On the other hand, it is possible to import one that already has 32. +Subsequent appending then led to writing past the 32-element array, +smashing its length. + +Tighten the check to reject any bag with 32 or more elements. + +We'll treat this vulnerability as a Low due to how contrived +the requirements are: for the code to be vulnerable, +it needs to append to an imported untrusted unencrypted PKCS#12 structure. + +Reported-by: Zou Dikai +Fixes: #1840 +Fixes: CVE-2026-42015 +Fixes: GNUTLS-SA-2026-04-29-11 +CVSS: 6.1 Medium CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:H +Severity: Low +Signed-off-by: Alexander Sosedkin + +CVE: CVE-2026-42015 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/a3e7c50d3e1761e5ef1d4b225507cab8f2b2c3ca] + +Signed-off-by: Jakub Szczudlo +--- +diff --git a/lib/x509/pkcs12_bag.c b/lib/x509/pkcs12_bag.c +index 911aeff..3822861 100644 +--- a/lib/x509/pkcs12_bag.c ++++ b/lib/x509/pkcs12_bag.c +@@ -375,7 +375,7 @@ int gnutls_pkcs12_bag_set_data(gnutls_pkcs12_bag_t bag, + return GNUTLS_E_INVALID_REQUEST; + } + +- if (bag->bag_elements == MAX_BAG_ELEMENTS - 1) { ++ if (bag->bag_elements >= MAX_BAG_ELEMENTS - 1) { + gnutls_assert(); + /* bag is full */ + return GNUTLS_E_MEMORY_ERROR; diff --git a/meta/recipes-support/gnutls/gnutls_3.8.12.bb b/meta/recipes-support/gnutls/gnutls_3.8.12.bb index b8f653d210..58acf4f1f5 100644 --- a/meta/recipes-support/gnutls/gnutls_3.8.12.bb +++ b/meta/recipes-support/gnutls/gnutls_3.8.12.bb @@ -43,6 +43,7 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar file://CVE-2026-42013-pre1.patch \ file://CVE-2026-42013.patch \ file://CVE-2026-42014.patch \ + file://CVE-2026-42015.patch \ " SRC_URI[sha256sum] = "a7b341421bfd459acf7a374ca4af3b9e06608dcd7bd792b2bf470bea012b8e51" From patchwork Wed Sep 9 13:35:46 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jakub Szczudlo (Nokia)" X-Patchwork-Id: 97733 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 661B2C79FB7 for ; Wed, 9 Sep 2026 13:35:58 +0000 (UTC) Received: from DUZPR83CU001.outbound.protection.outlook.com (DUZPR83CU001.outbound.protection.outlook.com [52.101.66.41]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.12389.1788960949536539934 for ; Wed, 09 Sep 2026 06:35:50 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@nokia.com header.s=selector1 header.b=KN18YrlU; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: nokia.com, ip: 52.101.66.41, mailfrom: jakub.szczudlo@nokia.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=L4H6u7+eVqFdGOw9N45QbIJOdhZdSbLXwVw1LIIzpYk3j6c8ywfEi3CyvsIe9l7i7gXRPOJOzkfo2azwJ0sLQUUK4Db/SSkFa+7hnn/pzPkxj14AUah/LqQIr0VDFYLf5/i9Bo5xhZ6XmU/AiyiqiHb/nUwjtiFrNokPK1+GB67LKTPv5ujqeToejWpdSeMK3BCEf9KuBRqtgNZjlITgS1Gs25GPLxy+88K9791Wlo4xHMlv0r3H2V7uPem0SQzqw/dMkFROEX2PmPWz7ludm6rw6arfYgEv62vPHc6ozzU398zjk8Ezp7mEhqhCSknkVgXikYid1ZQC9ncZwJ/oIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=fQVHSLCqUvnq6GZy5txjfpTkTJ7rK76zgPOR9Df9/8o=; b=ZjR5OsYTQR09uSy7eJ5eYindARXPmmJfIu5LYSbKWMIYxziRIOuV1P+eQN52jVJbe/lvpBh7rhALiWoz+zQDQN8675aATGjc5XHKcHcI0DRCf4bDlJas4uOmyvRl5Y0KtmgP717HyjFuHrbd2RoMEuBP2AJvySRqcNE55katIXyZGh2Z06miB2lZORw2gHtRMJ7/JFtzJjkiG+yBYeINRyZnIvF9h+ENJ+yTCTDZVr7X9+CXa7VGFa07vqYTc19vvTPTjNIZshirX6ryXJrtzd0aBI8V8GRLnUYHXZ1z7TelJ77ble5U8MPUcBUe4reZqpz6unn4HSwO7NY81z5YHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fQVHSLCqUvnq6GZy5txjfpTkTJ7rK76zgPOR9Df9/8o=; b=KN18YrlUvulFJHowDgSMFUhX/QKje4EzqIFHRanIWrMz3y6ZVPMRmgV+UPI4coJhnqS5x0s1qUksbJOLJFz1zeW8m9xdxqFyYtiYzvQCsUdakIsqX+ucDdNvGooVS4krAHlekODw+LNSFv2IVuQuvROyO0zInr3akzQ8p1mzJcvvU00r9R1lUABfs/BqL5gjtb/mIn59J1akXF0gqB9Wst8uYaIFNr81NOd2+KfFWsVWoypEhh5cxgnudSK8E4X40w0+xfplvIR3CduQZHiD+5IYn33uIM5amMfVnLAgKOaHGTpkYL3xjmi/0l9xmcRY0WcAhPdwknUtvip7pQeJcA== Received: from GV2PR07MB11919.eurprd07.prod.outlook.com (2603:10a6:150:357::20) by VI0PR07MB12084.eurprd07.prod.outlook.com (2603:10a6:800:33b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.7; Wed, 9 Sep 2026 13:35:46 +0000 Received: from GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680]) by GV2PR07MB11919.eurprd07.prod.outlook.com ([fe80::159a:9a82:1362:e680%3]) with mapi id 15.21.0360.008; Wed, 9 Sep 2026 13:35:46 +0000 From: "Jakub Szczudlo (Nokia)" To: "openembedded-core@lists.openembedded.org" CC: "yoann.congal@smile.fr" , "Jakub Szczudlo (Nokia)" Subject: [wrynose][PATCH 5/5] gnutls: fix CVE-2026-5260 Thread-Topic: [wrynose][PATCH 5/5] gnutls: fix CVE-2026-5260 Thread-Index: AQHdQGAewG9d1OXuQUCaA5nskjTGRA== Date: Wed, 9 Sep 2026 13:35:46 +0000 Message-ID: <20260909133510.3286-5-jakub.szczudlo@nokia.com> References: <20260909133510.3286-1-jakub.szczudlo@nokia.com> In-Reply-To: <20260909133510.3286-1-jakub.szczudlo@nokia.com> Accept-Language: en-US, en-150 Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: GV2PR07MB11919:EE_|VI0PR07MB12084:EE_ x-ms-office365-filtering-correlation-id: 72e007a0-f0a0-45d4-2b98-08df0e7740dc x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|23010399003|376014|1800799024|38070700021|11063799006|10067099003|56012099006|22082099003|18002099003|29003799003|6133799003|25016099003|12006099003|13003099007; x-microsoft-antispam-message-info: o6YlJw/XcCOfjhSgZHAobF4dRfuB9pp/sXovYkbL0BGE0nuJLO3wEatGl1f2aZkjuvovmBkR60Ddq/0/w1C/gxRsLawFJRKWiVlRzQnCySkh/SSiaBFyS4FLY2nFuD3n8xMSRTbDoFI9tcXIsR8ztTVpwazsvSa5yr/u+Q9c/17MaAQX5Em33LjX8gTC3q5cD/0wONcCEpby2da0dWxJPGL26RAt4vLr6XdB/DywdeGga8v74612MR5kVxUe98kISNF8VH55SQodnpDfWy/G7JGFptEPfKMgw0Ev6eSlZTv0s2eH2wX7jxrJatELb4sdqM0r0q7H9+IXdvgG39I0PqBTMcoEskJN1hi7sQXIbeLQC/6nYO4u7VuacW08O+oiFaBwa3jHO1dkjEmbmsi00tB2ht1K12m7qhfE6N6Tbo7ewWb48+2gYjhWmGjIq3KrjRs92gsrpTMNPvQ1L5UJyik+tS5+KesKGpmoyRR8e4NEfa1fi1f+yw5RRNNb7T7R8OocDY+3XDIGegSd5oNBSXRq2hCGIXDTma0w37plNzBK7r2fb8tk8lFr+I16DjiZPEBHW7eKsNpkkMmirIv3/ye04DZtA2LpRBC3nyE4gzo/obv05EOId0tu3siTsUYGueni7xMKgEfnazKt16PnyGjRf0f5TVBOWU5n7fJW9JEMPBlnPs63zN3yGC/lKXgKUI5my40vOjkx1MpshzH+s911U0PpHg1S7xCmcJP8e60= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR07MB11919.eurprd07.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(23010399003)(376014)(1800799024)(38070700021)(11063799006)(10067099003)(56012099006)(22082099003)(18002099003)(29003799003)(6133799003)(25016099003)(12006099003)(13003099007);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?kbFvDZQa5IwKSvM4+bG41Ni?= =?iso-8859-1?q?pzlVtOTG6aDnxPjxgIVwZPeBPf/pCIVX5JspVhZhQ+PhNPCHM8JTJlzb2/Rd?= =?iso-8859-1?q?VZpEW1clHY/IZZldFyniRMkhS8fTPm9o8OmlIIeZRsvDvz5Bz3ARAhHLJPuT?= =?iso-8859-1?q?fqHRSLgzqAzUjmwH9JEFwqiLmcDflCiKviaft39rErE4E0An8q4+rDetAmWr?= =?iso-8859-1?q?bhF6x3MVDqL/hbwbI4Ad5rpwzXh+YLZXOodB3TAu5j0JX8YJxeZT4ioog7pt?= =?iso-8859-1?q?/KtY0HLw79hTmBa6u04YobBotLVz6WhOmTz1nTnrTJ4+9lLyXAP3KevWQGVC?= =?iso-8859-1?q?r3ZEeZh/53NvhSQ6JXAIRjXimVfw+lta+qShYyXZpguQSKOs62Gf5VtEUTyC?= =?iso-8859-1?q?Pnk/iZeYok/w+iQpY0SWcGUiN5EsXnFVjwEMWcXAonRvjX899OreYff3jLF0?= =?iso-8859-1?q?rb7fef96OSBTjQKx8Ia891oJk1oaYN6N29VCSgi7fpZXziO7ZgYRC8wtxYt7?= =?iso-8859-1?q?miVajkzdxWYzE0PrPgCFG088iGzQeNH1dB469OYfQrQxfPj8mkBg3+gk9y3L?= =?iso-8859-1?q?5jYBvm/EHjgWu1F1J8DHCZHV8mtC1tEgKUcWySyboYHEAhbhRZ5n7Jmgr92j?= =?iso-8859-1?q?bRR0gnYYj87tNJCi2j7wTNO+CI6ztv6ok1OSGrEyJYMXqcvOg9cqc13aE8Nb?= =?iso-8859-1?q?NepPZJRvQJFVYZLbCNKq2DwokuL0zjCTRFWuQaOX46si/ImBYbzaYXSVWVH5?= =?iso-8859-1?q?mClsfwySQpyEreBJiWZkiRcvi8V3xtvqT6WWv8KBzdqSJmXt7Tj/ZTC7ujMM?= =?iso-8859-1?q?XHX0Q3FjLdXDM956joZPMmjeniZMvUi4kr20YPe6UMJsRmsVBL4mVYkWwaTU?= =?iso-8859-1?q?dG5TTSXO1jDw6bJ5GWasoqXWbD9zlT4ioz3KaVa8ZZ7in5z4D0m7oMki+OYq?= =?iso-8859-1?q?nNDa2fuN6wqTRchuWg3Jj5rqkwy3v9vIbrVV1/T1it+DWSG8ZNnT7xnJfzDx?= =?iso-8859-1?q?ykOkZoebIJ/t/IqrzUauN1yc3L7Quj71KDdcT3diRx+Ky6aMoAnhUOUJzvJy?= =?iso-8859-1?q?jHuR0KMOaWglht4pN1I5IXr1J8cNpi+8AA83CTNjuJxz4DGZqDyHf80U8BYy?= =?iso-8859-1?q?XlTzfSqE5HuSeymq1NklXx4D3V0cEqu/oJuMyDalPIOwrUwhrC/IkR+z9vGw?= =?iso-8859-1?q?JpqPS1bENYd67xVEwHNSumbQ589LdSt27XH+LeElQCGdE5tIAMWSX3KpDCcj?= =?iso-8859-1?q?5A+E41c4sdigCdjesrXzX79Jr2Vs3m/nVAEZIb2WbpnSHAfEGczHlEA3WYR8?= =?iso-8859-1?q?E5Ar3yMgRpQXC6eX0NrH+wX7/syVM6OjBe3WFD9cLKDZlZc5IW+tr886kDUr?= =?iso-8859-1?q?iRkrcvu/jolHGSWsbMVTmqwOm7pWZjYOHbapft8FPMuOtWrRgH3IUpI84Dgr?= =?iso-8859-1?q?ErJbAuD3+0yciOuJdH3qifz1jsj3v9rYg7H5GqtOWao1kCVEYGduFtrp4/YQ?= =?iso-8859-1?q?VKMWr8A7FCeXq8uXnH2H1qJ28qLQHbUVmQxgOwfkTbHYj1Cx+41NCKXg1dl0?= =?iso-8859-1?q?rWTCWArGFbpjCvOHPS+0+bPj1054JXR1IMRh9elufgytW0NnLsa0flavLZuM?= =?iso-8859-1?q?QUt/hKpI/z3AjmN1CJ7lLZIIANVC5VPqifT3AkzGkmgr0PTdl3ALj8mJePK8?= =?iso-8859-1?q?U4Q6IcjB+uy1KpXk0nJZsVzMjKbiM6rzAp+aE9nf6JEbSa49q7z3Wdz9ZQvT?= =?iso-8859-1?q?g/LDrs9SjvTS+P/6mhClP4HrHZsCn5yvsSttrDc8IZnYedw=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: GV2PR07MB11919.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72e007a0-f0a0-45d4-2b98-08df0e7740dc X-MS-Exchange-CrossTenant-originalarrivaltime: 09 Sep 2026 13:35:46.1401 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 13Z5rSV+8nV2WJKXOYUB2zer6cz2YE+cMB2KOH2DRUywfM45mir/JJKwE8/zQeOIl274roKfGN3l5CcjVXgot0q9PSFmUNxSBNdI9woPup4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI0PR07MB12084 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Wed, 09 Sep 2026 13:35:58 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/245467 Backport patch to fix CVE-2026-5260. References: https://nvd.nist.gov/vuln/detail/CVE-2026-5260 Upstream fix: https://gitlab.com/gnutls/gnutls/-/commit/77228f2d1ac207d2f894e5a168fbb47e5378e42f https://gitlab.com/gnutls/gnutls/-/commit/cf6bdc5e4df49e5583d3fb4d2296779785f10683 Tested with ptest Signed-off-by: Jakub Szczudlo --- .../gnutls/gnutls/CVE-2026-5260_p1.patch | 69 +++++++++++++++++++ .../gnutls/gnutls/CVE-2026-5260_p2.patch | 33 +++++++++ meta/recipes-support/gnutls/gnutls_3.8.12.bb | 2 + 3 files changed, 104 insertions(+) create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p1.patch create mode 100644 meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p2.patch diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p1.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p1.patch new file mode 100644 index 0000000000..c5ab814031 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p1.patch @@ -0,0 +1,69 @@ +From 77228f2d1ac207d2f894e5a168fbb47e5378e42f Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Mon, 30 Mar 2026 17:31:07 +0200 +Subject: [PATCH] lib/auth/rsa: check that ciphertext matches the modulus size + +A client sending extremely short premaster secret as part of an +RSA key exchange could've theoretically triggered a short heap overread +to nowhere when the RSA key was backed with a PKCS#11 token. +With this fix, the internal decryption function will not be called +with an mismatching plaintext length specified, avoiding the overread. + +Reported-by: Joshua Rogers of AISLE Research Team +Fixes: #1814 +Fixes: CVE-2026-5260 +Fixes: GNUTLS-SA-2026-04-29-10 +CVSS: 5.9 Medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H +Signed-off-by: Alexander Sosedkin + +CVE: CVE-2026-5260 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/77228f2d1ac207d2f894e5a168fbb47e5378e42f] + +Signed-off-by: Jakub Szczudlo +--- +diff --git a/lib/auth/rsa.c b/lib/auth/rsa.c +index 4d18132..496c378 100644 +--- a/lib/auth/rsa.c ++++ b/lib/auth/rsa.c +@@ -158,6 +158,7 @@ static int proc_rsa_client_kx(gnutls_session_t session, uint8_t *data, + int ret, dsize; + ssize_t data_size = _data_size; + volatile uint8_t ver_maj, ver_min; ++ unsigned int key_bits; + + #ifdef ENABLE_SSL3 + if (get_num_version(session) == GNUTLS_SSL3) { +@@ -180,6 +181,10 @@ static int proc_rsa_client_kx(gnutls_session_t session, uint8_t *data, + } + ciphertext.size = dsize; + } ++ gnutls_privkey_get_pk_algorithm(session->internals.selected_key, ++ &key_bits); ++ if (ciphertext.size != (key_bits + 7) / 8) ++ return gnutls_assert_val(GNUTLS_E_DECRYPTION_FAILED); + + ver_maj = _gnutls_get_adv_version_major(session); + ver_min = _gnutls_get_adv_version_minor(session); +diff --git a/lib/auth/rsa_psk.c b/lib/auth/rsa_psk.c +index cc92b4a..dba4011 100644 +--- a/lib/auth/rsa_psk.c ++++ b/lib/auth/rsa_psk.c +@@ -257,6 +257,7 @@ static int _gnutls_proc_rsa_psk_client_kx(gnutls_session_t session, + ssize_t data_size = _data_size; + gnutls_psk_server_credentials_t cred; + volatile uint8_t ver_maj, ver_min; ++ unsigned int rsa_key_bits; + + cred = (gnutls_psk_server_credentials_t)_gnutls_get_cred( + session, GNUTLS_CRD_PSK); +@@ -313,6 +314,10 @@ static int _gnutls_proc_rsa_psk_client_kx(gnutls_session_t session, + return GNUTLS_E_UNEXPECTED_PACKET_LENGTH; + } + ciphertext.size = dsize; ++ gnutls_privkey_get_pk_algorithm(session->internals.selected_key, ++ &rsa_key_bits); ++ if (ciphertext.size != (rsa_key_bits + 7) / 8) ++ return gnutls_assert_val(GNUTLS_E_DECRYPTION_FAILED); + + ver_maj = _gnutls_get_adv_version_major(session); + ver_min = _gnutls_get_adv_version_minor(session); diff --git a/meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p2.patch b/meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p2.patch new file mode 100644 index 0000000000..67154164c5 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/CVE-2026-5260_p2.patch @@ -0,0 +1,33 @@ +From cf6bdc5e4df49e5583d3fb4d2296779785f10683 Mon Sep 17 00:00:00 2001 +From: Alexander Sosedkin +Date: Mon, 30 Mar 2026 17:46:40 +0200 +Subject: [PATCH] lib/pkcs11_privkey: guard against overreading on short + ciphertexts + +This is an alternative fix for the callee side. + +Reported-by: Joshua Rogers of AISLE Research Team +Fixes: #1814 +Fixes: CVE-2026-5260 +Fixes: GNUTLS-SA-2026-04-29-10 +CVSS: 5.9 Medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H +Signed-off-by: Alexander Sosedkin + +CVE: CVE-2026-5260 +Upstream-Status: Backport [https://gitlab.com/gnutls/gnutls/-/commit/cf6bdc5e4df49e5583d3fb4d2296779785f10683] + +Signed-off-by: Jakub Szczudlo +--- +diff --git a/lib/pkcs11_privkey.c b/lib/pkcs11_privkey.c +index 568474e..e133c49 100644 +--- a/lib/pkcs11_privkey.c ++++ b/lib/pkcs11_privkey.c +@@ -838,7 +838,7 @@ int _gnutls_pkcs11_privkey_decrypt_data2(gnutls_pkcs11_privkey_t key, + if (ret != 0) + return gnutls_assert_val(GNUTLS_E_LOCKING_ERROR); + +- buffer = gnutls_malloc(siglen); ++ buffer = gnutls_malloc(MAX((size_t)siglen, plaintext_size)); + if (!buffer) { + gnutls_assert(); + return GNUTLS_E_MEMORY_ERROR; diff --git a/meta/recipes-support/gnutls/gnutls_3.8.12.bb b/meta/recipes-support/gnutls/gnutls_3.8.12.bb index 58acf4f1f5..203ecbc375 100644 --- a/meta/recipes-support/gnutls/gnutls_3.8.12.bb +++ b/meta/recipes-support/gnutls/gnutls_3.8.12.bb @@ -44,6 +44,8 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar file://CVE-2026-42013.patch \ file://CVE-2026-42014.patch \ file://CVE-2026-42015.patch \ + file://CVE-2026-5260_p1.patch \ + file://CVE-2026-5260_p2.patch \ " SRC_URI[sha256sum] = "a7b341421bfd459acf7a374ca4af3b9e06608dcd7bd792b2bf470bea012b8e51"