Skip to main content

Linux Kernel CVE-2026-97594

| EUVDEUVD-2026-86902 HIGH
2026-09-25 Linux GHSA-236x-phcf-6qmf
7.8
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Enter Landlock domain with fs access right
  2. Delivery
    Loop linkat(2) on source dentry
  3. Exploit
    Race concurrent rename(2)/rmdir(2)
  4. Execution
    Reparent source, free former parent
  5. Persist
    UAF read in collect_domain_accesses()
  6. Impact
    Kernel crash / denial of service

Vulnerability Assessment

Exploitation Conditions

Exploitation requires local code execution and that the attacking process has entered a Landlock domain configured to handle at least one filesystem access right - without an active Landlock ruleset the vulnerable current_check_refer_path()/hook_path_link() path is not reached. The attacker must then win a race: a linkat(2) loop must overlap with rename(2)/rmdir(2) reparenting and freeing the source dentry's former parent while security_path_link() runs. Limiting factors: local access only (AV:L), low but non-zero privileges to invoke syscalls and set up a Landlock domain (PR:L), a timing-sensitive race window (raising real-world attack complexity), and the fact that the sibling rename hook (hook_path_rename) is already protected by lock_rename() so only the link path is exploitable.

Impact

Signals conflict sharply. The NVD CVSS of 7.8 (AV:L/AC:L/PR:L/UI:N/C:H/I:H/A:H) portrays a high-impact local flaw with full confidentiality/integrity/availability loss, but the description contradicts this: the root cause is a use-after-free READ of a freed parent dentry in collect_domain_accesses() reached via a narrow race between linkat(2) and rename(2)/rmdir(2). A race window makes AC:H more honest than the assigned AC:L, and the primary consequence is a KASAN-detected slab-use-after-free that manifests as a kernel crash - availability loss - rather than the confidentiality/integrity compromise implied by C:H/I:H. No EPSS score, no CISA KEV listing, and no public exploit are present in the input, so there is no signal of active or automatable exploitation. The Tags field labels this 'Information Disclosure,' which is inconsistent with the actual UAF/DoS nature (the freed read is not an attacker-controlled disclosure primitive). Net: this is a legitimate memory-safety bug worth patching on affected hosts, but it is a low-real-world-priority, local, race-gated denial-of-service - not the critical remote threat the 7.8 suggests. A weaponizable UAF-to-code-execution path is not demonstrated in the provided data and should not be assumed.

Exploit ScenarioDerived

A local unprivileged user runs a process that has entered a Landlock domain handling at least one filesystem access right, then executes a tight loop calling linkat(2) on a source file while a second thread races rename(2) and rmdir(2) to reparent and free the source's former parent directory during the security_path_link() hook. The freed dentry is then dereferenced by the LSM hook, producing a use-after-free read and typically a kernel crash. No public proof-of-concept is identified in the provided data; the reporter demonstrated the flaw via a KASAN reproducer (llrepro2).

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 25, 2026

A use-after-free in the Linux kernel's Landlock security module (current_check_refer_path()/hook_path_link()) lets a local process that has already entered a Landlock domain handling at least one filesystem access right race a linkat(2) loop against rename(2) plus rmdir(2) so that a freed parent dentry is walked during security_path_link(), triggering a KASAN slab-use-after-free. Impact per our independent assessment is primarily availability (kernel memory corruption/crash) with limited integrity effects, not confidentiality; the assessed vector is CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H, which is lower on complexity and confidentiality than the vendor-published CVSS 7.8 (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) - signals conflict sharply on severity. Exploitation requires local code execution, membership in an active Landlock domain, and winning a timing-sensitive race; no public exploit code and no confirmed active exploitation were identified at time of analysis, and no public exploit has been identified at time of analysis.

RemediationAI

Vendor-released patch: apply the upstream fixes referenced by the CVE - stable commits 379efd2ce8b26fd35feb13ccc2f671ff105a5052, ba29c46ccfe3ebadfb8aa18149186c49f84b14f8, and 2c6dc792538260a8087ac5b22c31b3b8e47c85d6, which are released in Linux 6.18.53, 7.2.7, and 7.3-rc3 (see https://git.kernel.org/stable/c/379efd2ce8b26fd35feb13ccc2f671ff105a5052, https://git.kernel.org/stable/c/ba29c46ccfe3ebadfb8aa18149186c49f84b14f8, https://git.kernel.org/stable/c/2c6dc792538260a8087ac5b22c31b3b8e47c85d6, and the NVD record at https://nvd.nist.gov/vuln/detail/CVE-2026-97594); distribution users should install the equivalent patched kernel package from their vendor (or a kernel livepatch if offered) and reboot into it, since the fix must be resident in the running kernel. Because exploitation is local and requires the attacker's own process to have entered a Landlock domain handling at least one filesystem access right, the practical compensating control is to prevent untrusted local code - or processes that can voluntarily sandbox themselves - from running on unpatched kernels and to restrict how untrusted workloads can create Landlock domains; note the sharp trade-off that disabling Landlock entirely (via the lsm= kernel command line parameter and removal of landlock from the enabled LSM list) removes the vulnerable hook but also removes the kernel's own sandboxing defense-in-depth for confinement of compromised services, so it should be a last resort for hosts that cannot be patched promptly. Reducing the number of local users or processes able to invoke raw linkat/rename/rmdir syscalls (for example through seccomp profiles on untrusted workloads) shrinks the race surface but does not remove the bug and can break legitimate file-management workloads.

Affected VersionsENISA

Linux patch: 6.18.53
Linux 5.19
Linux patch: 7.2.7
Linux patch: 0
Linux b91c3e4ea756b12b7d992529226edce1cfd854d7 <379efd2ce8b26fd35feb13ccc2f671ff105a5052
Linux b91c3e4ea756b12b7d992529226edce1cfd854d7 <2c6dc792538260a8087ac5b22c31b3b8e47c85d6
Linux b91c3e4ea756b12b7d992529226edce1cfd854d7 <ba29c46ccfe3ebadfb8aa18149186c49f84b14f8
Linux patch: 7.3-rc3

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Landlock is a Linux Security Module that allows unprivileged processes to voluntarily sandbox themselves by restricting filesystem access rights. The vulnerable code path is current_check_refer_path(), reachable from security_path_link() via filename_linkat(), which evaluates whether a link creation obeys the caller's Landlock ruleset. The kernel's dentry (dcache) model does not guarantee that holding a reference on a child dentry pins its parent: __d_move(), invoked during rename(2), reassigns dentry->d_parent and drops the reference the child previously held on its former parent. current_check_refer_path() read old_dentry->d_parent without taking either a reference or a lock and then dereferenced that pointer in collect_domain_accesses() and in the audit record, so a concurrent rename(2) could reparent the source dentry while the hook was still walking the old hierarchy, after which rmdir(2) could drop the last reference and free the former parent - a classic use-after-free (CWE-416) confirmed by the reported KASAN slab-use-after-free splat in collect_domain_accesses+0x278/0x290. Notably, the sibling hook_path_rename() path is not affected because the rename syscall path calls lock_rename() before the hook, which prevents the source from being reparented underneath it; only the link path lacks that protection. The upstream fix takes a reference on the dentry selected as the source parent - dget() for the common-mount-root case and dget_parent() otherwise - and releases it only after the hierarchy walk and synchronous audit logging complete.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Linux) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 5.3 MEDIUM

Local syscall access with a Landlock domain (AV:L/PR:L), a timing race (AC:H); impact is a UAF-read kernel crash so A:H, no real confidentiality (C:N) and only marginal integrity (I:L).

3.1 AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H
4.0 AV:L/AC:H/AT:P/PR:L/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE 7.0 HIGH
AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Red Hat 7.0 MEDIUM

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

4
CVSS changed
Sep 25, 2026 - 15:22 NVD
7.8 (HIGH)
Patch available
Sep 25, 2026 - 11:02 EUVD
CVE Published
Sep 25, 2026 - 10:22 cve.org
UNKNOWN (no severity yet)
CVE Published
Sep 25, 2026 - 10:22 cve.org
HIGH 7.8

DescriptionCVE.org

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

landlock: Fix use-after-free of the source's parent directory

current_check_refer_path() reads old_dentry->d_parent without holding a reference nor a lock on it, and then dereferences it in collect_domain_accesses() and in the audit record.

A reference on a child does not pin its parent: __d_move() reassigns dentry->d_parent and drops the reference the child held on its former parent. hook_path_rename() is not affected because the rename path calls lock_rename() before the hook, so the source cannot be reparented under it. hook_path_link() has no such protection: filename_linkat() holds a reference on the source dentry but neither locks nor references its parent, so a concurrent rename(2) can reparent the source while security_path_link() runs, and the former parent can then be removed and freed while the hook walks it.

A process can trigger this after entering a Landlock domain that handles at least one filesystem access right. The process can then race a linkat(2) loop against rename(2) and rmdir(2):

BUG: KASAN: slab-use-after-free in collect_domain_accesses+0x278/0x290 Read of size 4 at addr ffff888160bd53f4 by task llrepro2/549 collect_domain_accesses+0x278/0x290 current_check_refer_path+0x952/0x1120 security_path_link+0x1be/0x320 filename_linkat+0x342/0x6d0 __x64_sys_linkat+0xfa/0x150 Freed by task 562: kmem_cache_free+0x139/0x4c0 i_callback+0x4b/0x80 rcu_core+0x7dc/0x10a0

Take a reference on the dentry selected as the source parent, using dget() for the common-mount-root case and dget_parent() otherwise. Release it after the hierarchy walk and synchronous audit logging.

[mic: Clarify the caller, reachability, and reference handling]

Executive ViewAI

Why It Matters

A use-after-free vulnerability in the Linux kernel's Landlock security module could allow an authenticated local user to crash affected systems, leading to service outages. While exploitation requires a timing-sensitive race and no public exploit identified at time of analysis, unpatched systems remain at risk of availability disruptions. Leadership should prioritize patching to maintain uptime and protect productivity.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 96% exploitable
Prevalence
Low
Linux kernel is ubiquitous but the vulnerable path requires an active Landlock domain, rarely deployed
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Medium

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy