All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junjie Cao <junjie.cao@linux.dev>
To: openembedded-core@lists.openembedded.org
Cc: paul@pbarker.dev, randy.macleod@windriver.com,
	Venkata.Navuduri@windriver.com
Subject: [OE-core][PATCH v2 10/10] cve-exclusion: set status for CVE-2023-6240
Date: Mon,  3 Aug 2026 01:48:27 -0700	[thread overview]
Message-ID: <20260803084827.1348810-11-junjie.cao@linux.dev> (raw)
In-Reply-To: <20260803084827.1348810-1-junjie.cao@linux.dev>

"Marvin" is Hubert Kario's Bleichenbacher-style timing oracle research,
not a Marvell or s390 issue as some data sets suggest:

  https://people.redhat.com/~hkario/marvin/

The affected code is the generic software RSA PKCS#1 v1.5 unpadding in
crypto/rsa-pkcs1pad.c. pkcs1pad_decrypt_complete() has three
secret-dependent early exits (leading zero byte, block type, minimum
padding length) and a loop whose trip count depends on the position of
the separator, so the time taken reveals padding validity. There is no
constant-time unpadding and no implicit-rejection fallback in the tree,
and no commit touching that file addresses decryption timing.

Red Hat classifies it CWE-203 and has shipped fixes only in RHEL
errata (RHSA-2024:2758 for 9.4, RHSA-2024:3618 for 8.10 and others);
the corresponding bugzilla is still NEW:

  https://access.redhat.com/security/cve/CVE-2023-6240

Ubuntu records "appears unfixed in upstream as of 2024.08.24" and
Debian lists src:linux as vulnerable in all suites:

  https://ubuntu.com/security/CVE-2023-6240
  https://security-tracker.debian.org/tracker/CVE-2023-6240

Practical exposure is narrow: kernel PKCS#1 v1.5 use is dominated by
signature verification rather than decryption, and an attacker needs a
service driving KEYCTL_PKEY_DECRYPT with a long-lived key. The leaky
primitive is nevertheless reachable.

e8829ef1f73f ("crypto: rsa - restrict plaintext/ciphertext values
more", v6.9) is unrelated: it enforces SP800-56B value restrictions and
is not a timing fix.

CC: Paul Barker <paul@pbarker.dev>
AI-Generated: Uses Claude (claude-opus-5)
Signed-off-by: Junjie Cao <junjie.cao@linux.dev>
---
changes in v2:
- split out of the single combined patch, one CVE per patch as requested
- added primary source links (disclosures, distribution trackers, mailing
  list threads, upstream commits) to every commit message
- added the three CVEs with no upstream fix as "unpatched" entries instead
  of leaving them undocumented
- disclosed AI assistance per the contributor guide

v1: https://lore.kernel.org/openembedded-core/20260802143444.1178575-1-junjie.cao@linux.dev/

 meta/recipes-kernel/linux/cve-exclusion.inc | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/meta/recipes-kernel/linux/cve-exclusion.inc b/meta/recipes-kernel/linux/cve-exclusion.inc
index 506d3705..4ac5e343 100644
--- a/meta/recipes-kernel/linux/cve-exclusion.inc
+++ b/meta/recipes-kernel/linux/cve-exclusion.inc
@@ -252,3 +252,10 @@ CVE_STATUS[CVE-2023-4010] = "fixed-version: Fixed from version 6.18"
 # https://lore.kernel.org/linux-nvme/20231016060519.231880-1-joshi.k@samsung.com/
 CVE_STATUS[CVE-2023-6238] = "unpatched: the proposed fix was applied to \
 nvme-6.6 and then reverted, no upstream fix has landed since"
+
+# "Marvin": the PKCS#1 v1.5 unpadding in crypto/rsa-pkcs1pad.c branches on
+# secret-derived data, leaking padding validity by timing. Not a Marvell or
+# s390 issue despite some data sets. Fixed only in RHEL downstream.
+# https://people.redhat.com/~hkario/marvin/
+CVE_STATUS[CVE-2023-6240] = "unpatched: Bleichenbacher-style timing oracle in \
+crypto/rsa-pkcs1pad.c is still present in mainline, fixed only downstream in RHEL"
-- 
2.43.0



  parent reply	other threads:[~2026-08-03  8:51 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-03  8:48 [OE-core][PATCH v2 00/10] cve-exclusion: triage ten kernel CVEs lacking upstream fix data Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 01/10] cve-exclusion: set status for CVE-2019-14899 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 02/10] cve-exclusion: set status for CVE-2021-3714 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 03/10] cve-exclusion: set status for CVE-2021-3864 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 04/10] cve-exclusion: set status for CVE-2022-0400 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 05/10] cve-exclusion: set status for CVE-2022-1247 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 06/10] cve-exclusion: set status for CVE-2022-4543 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 07/10] cve-exclusion: set status for CVE-2023-3397 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 08/10] cve-exclusion: set status for CVE-2023-4010 Junjie Cao
2026-08-03  8:48 ` [OE-core][PATCH v2 09/10] cve-exclusion: set status for CVE-2023-6238 Junjie Cao
2026-08-03  8:48 ` Junjie Cao [this message]
2026-08-06 11:52 ` [OE-core][PATCH v2 00/10] cve-exclusion: triage ten kernel CVEs lacking upstream fix data Paul Barker
2026-08-10 10:19   ` Junjie Cao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260803084827.1348810-11-junjie.cao@linux.dev \
    --to=junjie.cao@linux.dev \
    --cc=Venkata.Navuduri@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=paul@pbarker.dev \
    --cc=randy.macleod@windriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.