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

security/keys: fix missed RCU read section on lookup

Nicholas Carlini reports that the keyring code calls assoc_array_find()
in find_key_to_update() without holding the RCU read lock, while the
assoc_array_gc() code really is designed around removing the node from
the tree and then freeing it after an RCU grace-period.

The regular key handling doesn't see this because holding the keyring
semaphore hides any lifetime issues, but the persistent key handling
uses a different model.

Instead of extending the keyring locking, just do the simple RCU locking
that the assoc_array was designed for.
Published: 2026-07-19
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

In the Linux kernel’s keyring subsystem, an associative array lookup in find_key_to_update() does not acquire the required RCU read lock while the garbage‑collection code frees nodes after an RCU grace period. This mismatch can cause a lookup thread to traverse memory that has been freed, leading to a use‑after‑free condition. The vulnerability is specific to persistent key handling, which uses a different locking model than regular key operations. The description suggests that a successful exploit could corrupt kernel memory, though this effect is inferred from the use‑after‑free nature of the flaw.

Affected Systems

All Linux kernel builds that include the keyring subsystem are potentially affected until the missing RCU read block is applied. No specific version range is provided, so any unpatched kernel with keyring support enabled is at risk.

Risk and Exploitability

The CVSS score of 7.8 indicates high severity, but the EPSS score of less than 1% points to a low probability of widespread automated exploitation. The flaw requires the attacker to trigger a key lookup while a node is concurrently being freed, which typically demands local or privileged access. If successfully exploited, it could lead to a denial‑of‑service or, as inferred, kernel memory corruption that might be leveraged for arbitrary code execution given additional local privilege.

Generated by OpenCVE AI on August 3, 2026 at 01:39 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel patch that adds the missing RCU read lock for keyring lookups (install the latest kernel update that includes the fix).
  • If a kernel update cannot be applied immediately, limit the use of persistent keyrings or disable them to reduce the attack surface.
  • Monitor kernel logs for RCU or keyring‑related errors and enable debugging features such as rcu_print_events to detect premature frees or memory corruption events.

Generated by OpenCVE AI on August 3, 2026 at 01:39 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
History

Sat, 25 Jul 2026 01:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362
CWE-416

Wed, 22 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362
CWE-416

Wed, 22 Jul 2026 12:15:00 +0000

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

None

threat_severity

Moderate


Mon, 20 Jul 2026 14:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

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


Sun, 19 Jul 2026 15:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: security/keys: fix missed RCU read section on lookup Nicholas Carlini reports that the keyring code calls assoc_array_find() in find_key_to_update() without holding the RCU read lock, while the assoc_array_gc() code really is designed around removing the node from the tree and then freeing it after an RCU grace-period. The regular key handling doesn't see this because holding the keyring semaphore hides any lifetime issues, but the persistent key handling uses a different model. Instead of extending the keyring locking, just do the simple RCU locking that the assoc_array was designed for.
Title security/keys: fix missed RCU read section on lookup
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-05T12:38:12.353Z

Reserved: 2026-07-19T07:54:57.027Z

Link: CVE-2026-64015

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-64015 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T01:45:02Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference