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

configfs: unhash the dentry before dropping the item in rmdir

configfs_get_config_item() treats a hashed dentry as proof that
sd->s_element is a live config_item. configfs_rmdir() breaks that:
simple_rmdir() leaves the dentry hashed, the last reference to the item is
dropped right after, and the dentry is only unhashed by d_delete() once
->rmdir() has returned. configfs_symlink() resolves its target holding no
lock on it, so get_target() can land in that window:

BUG: KASAN: slab-use-after-free in config_item_get+0x26/0x90
get_target fs/configfs/symlink.c:128 [inline]
configfs_symlink+0x4ab/0x1030 fs/configfs/symlink.c:185

Unhash in configfs_remove_dir(), while the item is still guaranteed to be
there. A reference obtained just before that stays harmless, as
create_link() rechecks CONFIGFS_USET_DROPPING, already set by
configfs_detach_prep(). Both configfs_unregister_subsystem() paths
d_drop() after detaching, so this only makes rmdir match them.
Published: 2026-09-25
Score: n/a
EPSS: n/a
KEV: No
Impact: Arbitrary code execution
Action: Immediate Patch
AI Analysis

Impact

The vulnerability arises in the Linux kernel’s configfs subsystem when a directory entry remains hashed after a removal operation, causing a use‑after‑free condition in config_item_get. This flaw can lead to kernel memory corruption and, if exploited, arbitrary code execution or system crash. The weakness is a classic Use‑After‑Free error, classified as CWE‑416.

Affected Systems

All Linux kernel versions containing the current configfs implementation before the patch that removes the stale hash are affected. The vendors listed are Linux:Linux, indicating that any distribution shipping an unpatched Linux kernel is potentially vulnerable. No specific affected version string is provided, so all legacy kernels should be treated as at risk until a patch is applied.

Risk and Exploitability

The CVSS score and EPSS data are not available in the supplied information, and the vulnerability is not listed in CISA’s KEV catalog. The exploit requires local access to the kernel’s configfs interface, so a privileged user (or a compromised process with kernel‑space code execution capabilities) could trigger the critical use‑after‑free window. If an attacker can trigger rmdir operations on the configfs tree, the window where the dangling reference is still reachable exists until the d_delete unhash call after the rmdir return, creating a narrow but exploitable timing window. In the absence of a publicly available patch, the risk is high for systems that expose configfs to untrusted users.

Generated by OpenCVE AI on September 25, 2026 at 14:53 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version that includes the configfs hash‑unhash fix
  • If an upgrade cannot be applied immediately, remount or unmount the configfs filesystem (e.g., "umount /sys/kernel/config") to prevent rmdir operations from reaching the vulnerable code path
  • Implement least‑privilege controls to limit access to the configfs interface, ensuring only trusted users or processes can perform rmdir actions

Generated by OpenCVE AI on September 25, 2026 at 14:53 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 25 Sep 2026 15:15: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: unhash the dentry before dropping the item in rmdir configfs_get_config_item() treats a hashed dentry as proof that sd->s_element is a live config_item. configfs_rmdir() breaks that: simple_rmdir() leaves the dentry hashed, the last reference to the item is dropped right after, and the dentry is only unhashed by d_delete() once ->rmdir() has returned. configfs_symlink() resolves its target holding no lock on it, so get_target() can land in that window: BUG: KASAN: slab-use-after-free in config_item_get+0x26/0x90 get_target fs/configfs/symlink.c:128 [inline] configfs_symlink+0x4ab/0x1030 fs/configfs/symlink.c:185 Unhash in configfs_remove_dir(), while the item is still guaranteed to be there. A reference obtained just before that stays harmless, as create_link() rechecks CONFIGFS_USET_DROPPING, already set by configfs_detach_prep(). Both configfs_unregister_subsystem() paths d_drop() after detaching, so this only makes rmdir match them.
Title configfs: unhash the dentry before dropping the item in rmdir
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.375Z

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

Link: CVE-2026-97949

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

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

Link: CVE-2026-97949

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-25T15:00:20Z

Weaknesses