Description
In the Linux kernel, the following vulnerability has been resolved:

keys: make keyring key-chunk byte order agree with keyring_diff_objects()

keyring_get_key_chunk() loads description bytes into the index chunk low
address first, while keyring_diff_objects() numbers the first differing
bit from the low end and folds the absolute byte index into the level
without removing the inline-prefix offset the level already carries.
The two disagree on byte order and bit position, so the array can be
told two keys first differ at a bit that does not differ in the chunk
the walker uses, letting crafted descriptions collide into one node.

Load the chunk in the order keyring_diff_objects() assumes and drop the
inline-prefix length when folding the byte index into the level. This
only changes the in-memory ordering used to place keys within a keyring;
add, search and read of non-colliding keys are unaffected.
Published: 2026-08-15
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Linux kernel keyring subsystem in its current form processes description bytes in a different order when retrieving a key chunk versus when comparing key objects. This mismatch in byte and bit ordering allows an attacker to engineer key descriptions that appear identical to the keyring comparison function but actually differ in storage. As a result, crafted keys can collide with existing ones, giving the attacker the ability to read or replace keys that they should not have access to, potentially leading to unauthorized privilege use.

Affected Systems

All Linux kernel versions distributed before the application of the patch that aligns keyring key‑chunk ordering are affected. This includes every Linux distribution that ships the vulnerable kernel, regardless of vendor, since the issue resides in the core kernel code.

Risk and Exploitability

The flaw has a CVSS score of 5.5, reflecting a moderate impact when successfully abused. The EPSS score is less than 1 %, indicating a very low probability of exploitation at the time of assessment, and it is not listed in CISA's KEV catalog. The most likely attack vector is local, requiring an attacker to invoke keyring APIs from within a user or process that has write access to keyrings. If an attacker can create keys with crafted descriptions, the collision may allow unauthorized access to confidential business or system data controlled by those keys.

Generated by OpenCVE AI on August 21, 2026 at 23:00 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version that contains the keyring byte‑order fix.
  • Configure SELinux, AppArmor or other kernel security modules to restrict keyring creation and modification privileges to trusted processes only.
  • Restrict write access to keyrings by setting appropriate keyring permissions and using udev rules to limit the capabilities of non‑privileged users.

Generated by OpenCVE AI on August 21, 2026 at 23:00 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6466-1 linux security update
History

Fri, 21 Aug 2026 21:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-269

Fri, 21 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1025
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Wed, 19 Aug 2026 17:00:00 +0000


Sat, 15 Aug 2026 15:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-269

Sat, 15 Aug 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: keys: make keyring key-chunk byte order agree with keyring_diff_objects() keyring_get_key_chunk() loads description bytes into the index chunk low address first, while keyring_diff_objects() numbers the first differing bit from the low end and folds the absolute byte index into the level without removing the inline-prefix offset the level already carries. The two disagree on byte order and bit position, so the array can be told two keys first differ at a bit that does not differ in the chunk the walker uses, letting crafted descriptions collide into one node. Load the chunk in the order keyring_diff_objects() assumes and drop the inline-prefix length when folding the byte index into the level. This only changes the in-memory ordering used to place keys within a keyring; add, search and read of non-colliding keys are unaffected.
Title keys: make keyring key-chunk byte order agree with keyring_diff_objects()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-19T16:39:06.890Z

Reserved: 2026-08-15T05:44:03.917Z

Link: CVE-2026-74566

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T13:18:02.120

Modified: 2026-08-19T17:21:11.443

Link: CVE-2026-74566

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-74566 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-21T23:15:05Z

Weaknesses
  • CWE-1025

    Comparison Using Wrong Factors