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

configfs: pin the symlink target's dirent instead of chasing ->ci_dentry

create_link() reads the target's configfs_dirent from
item->ci_dentry->d_fsdata, relying on the item reference taken by
get_target(). That reference pins the item, not its dentry: the dentry is
pinned by DCACHE_PERSISTENT, which configfs_remove_dir() releases via
simple_rmdir() while the item is still alive. A symlink racing with rmdir
of its target can therefore find ->ci_dentry freed and its dirent
released, triggering WARN_ON(!atomic_read(&sd->s_count)) in configfs_get().

Take the dirent in get_target() as well, under ->d_lock and atomically
with the item reference, and pass it down to create_link(). A hashed
dentry has not been killed yet, so its ->d_fsdata reference keeps the
dirent alive there.
Published: 2026-09-25
Score: n/a
EPSS: n/a
KEV: No
Impact: Use‑After‑Free in the Linux kernel
Action: Upgrade Kernel
AI Analysis

Impact

An incorrect handling of directory entries in the Linux kernel’s configfs subsystem can cause a reference count race that releases a dentry while it is still referenced by a symlink target. This leads to a use‑after‑free during a configfs lookup, allowing an attacker to trigger a kernel fault that can be leveraged for privilege escalation on systems where the attacker can manipulate configfs objects.

Affected Systems

The vulnerability affects all Linux kernel releases prior to the fix, as identified by the kernel CPE. No specific vendor version information is supplied, but the issue exists in any unpatched copy of the Linux kernel.

Risk and Exploitability

The lack of an EPSS score means the exploitation likelihood cannot be quantified, and KEV indicates the vulnerability is not currently listed as a widely‑exploited flaw. However, because the flaw occurs at kernel level and involves an unchecked use‑after‑free, it presents a high severity risk. The attack likely requires local access to create configuration files or symlinks in configfs, which is normally restricted to the root or privileged users. An attacker who can influence configfs object creation and deletion could exploit the race to crash the kernel or gain elevated privileges.

Generated by OpenCVE AI on September 25, 2026 at 18:16 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to a kernel version that includes the patch (commit 4f54beb2e7f6d39939 and related updates).
  • If an immediate kernel upgrade is impossible, restrict or disable the configfs filesystem on the system to prevent untrusted users from creating symlinks or directories in it.
  • Configure kernel OOM and sanity checks to detect and log anomalous configfs operations, and apply the principle of least privilege to any services that interact with configfs.

Generated by OpenCVE AI on September 25, 2026 at 18:16 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 25 Sep 2026 18:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Fri, 25 Sep 2026 10:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: configfs: pin the symlink target's dirent instead of chasing ->ci_dentry create_link() reads the target's configfs_dirent from item->ci_dentry->d_fsdata, relying on the item reference taken by get_target(). That reference pins the item, not its dentry: the dentry is pinned by DCACHE_PERSISTENT, which configfs_remove_dir() releases via simple_rmdir() while the item is still alive. A symlink racing with rmdir of its target can therefore find ->ci_dentry freed and its dirent released, triggering WARN_ON(!atomic_read(&sd->s_count)) in configfs_get(). Take the dirent in get_target() as well, under ->d_lock and atomically with the item reference, and pass it down to create_link(). A hashed dentry has not been killed yet, so its ->d_fsdata reference keeps the dirent alive there.
Title configfs: pin the symlink target's dirent instead of chasing ->ci_dentry
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-09-25T10:22:58.970Z

Reserved: 2026-09-25T10:18:58.205Z

Link: CVE-2026-97950

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-25T11:17:22.567

Modified: 2026-09-25T11:17:22.567

Link: CVE-2026-97950

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-25T18:30:17Z

Weaknesses