Linux Kernel up to 6.18-rc1 open_by_handle_at memory leak

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 4.6 | $0-$5k | 0.00 |
Summary
A vulnerability identified as critical has been detected in Linux Kernel up to 6.18-rc1. Affected is the function open_by_handle_at. Performing a manipulation results in memory leak.
This vulnerability is cataloged as CVE-2025-40105. There is no exploit available.
You should upgrade the affected component.
Details
A vulnerability was found in Linux Kernel up to 6.18-rc1. It has been classified as critical. This affects the function open_by_handle_at. The manipulation with an unknown input leads to a memory leak vulnerability. CWE is classifying the issue as CWE-401. The product does not sufficiently track and release allocated memory after it has been used, which slowly consumes remaining memory. This is going to have an impact on availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: vfs: Don't leak disconnected dentries on umount When user calls open_by_handle_at() on some inode that is not cached, we will create disconnected dentry for it. If such dentry is a directory, exportfs_decode_fh_raw() will then try to connect this dentry to the dentry tree through reconnect_path(). It may happen for various reasons (such as corrupted fs or race with rename) that the call to lookup_one_unlocked() in reconnect_one() will fail to find the dentry we are trying to reconnect and instead create a new dentry under the parent. Now this dentry will not be marked as disconnected although the parent still may well be disconnected (at least in case this inconsistency happened because the fs is corrupted and .. doesn't point to the real parent directory). This creates inconsistency in disconnected flags but AFAICS it was mostly harmless. At least until commit f1ee616214cb ("VFS: don't keep disconnected dentries on d_anon") which removed adding of most disconnected dentries to sb->s_anon list. Thus after this commit cleanup of disconnected dentries implicitely relies on the fact that dput() will immediately reclaim such dentries. However when some leaf dentry isn't marked as disconnected, as in the scenario described above, the reclaim doesn't happen and the dentries are "leaked". Memory reclaim can eventually reclaim them but otherwise they stay in memory and if umount comes first, we hit infamous "Busy inodes after unmount" bug. Make sure all dentries created under a disconnected parent are marked as disconnected as well.
The advisory is shared at git.kernel.org. This vulnerability is uniquely identified as CVE-2025-40105 since 04/16/2025. The exploitability is told to be difficult. Technical details are known, but no exploit is available.
The vulnerability scanner Nessus provides a plugin with the ID 272061 (Linux Distros Unpatched Vulnerability : CVE-2025-40105), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 5.4.301, 5.10.246, 5.15.196, 6.1.158, 6.6.114, 6.12.55, 6.17.5 or 6.18-rc2 eliminates this vulnerability. Applying the patch b5abafd0aa8d7bcb935c8f91e4cfc2f2820759e4/20863bb7fbb016379f8227122edfabc5c799bc79/8004d4b8cbf1bd68a23c160d57287e177c82cc69/7e0c8aaf4e28918abded547a5147c7d52c4af7d2/cebfbf40056a4d858b2a3ca59a69936d599bd209/620f3b0ede9c5cb4976cd0457d0b04ad551e5d6b/eadc49999fa994d6fbd70c332bd5d5051cc42261/56094ad3eaa21e6621396cc33811d8f72847a834 is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the databases at Tenable (272061) and CERT Bund (WID-SEC-2025-2450). If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Affected
- Google Container-Optimized OS
- Debian Linux
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- RESF Rocky Linux
- Open Source Linux Kernel
- Dell NetWorker
Product
Type
Vendor
Name
Version
- 5.0
- 5.1
- 5.2
- 5.3
- 5.4.300
- 5.10.245
- 5.15.195
- 6.1.157
- 6.6.113
- 6.12.0
- 6.12.1
- 6.12.2
- 6.12.3
- 6.12.4
- 6.12.5
- 6.12.6
- 6.12.7
- 6.12.8
- 6.12.9
- 6.12.10
- 6.12.11
- 6.12.12
- 6.12.13
- 6.12.14
- 6.12.15
- 6.12.16
- 6.12.17
- 6.12.18
- 6.12.19
- 6.12.20
- 6.12.21
- 6.12.22
- 6.12.23
- 6.12.24
- 6.12.25
- 6.12.26
- 6.12.27
- 6.12.28
- 6.12.29
- 6.12.30
- 6.12.31
- 6.12.32
- 6.12.33
- 6.12.34
- 6.12.35
- 6.12.36
- 6.12.37
- 6.12.38
- 6.12.39
- 6.12.40
- 6.12.41
- 6.12.42
- 6.12.43
- 6.12.44
- 6.12.45
- 6.12.46
- 6.12.47
- 6.12.48
- 6.12.49
- 6.12.50
- 6.12.51
- 6.12.52
- 6.12.53
- 6.12.54
- 6.17.0
- 6.17.1
- 6.17.2
- 6.17.3
- 6.17.4
- 6.18-rc1
License
Website
- Vendor: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 4.8VulDB Meta Temp Score: 4.6
VulDB Base Score: 4.8
VulDB Temp Score: 4.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Memory leakCWE: CWE-401 / CWE-404
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Partially
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 272061
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2025-40105
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 5.4.301/5.10.246/5.15.196/6.1.158/6.6.114/6.12.55/6.17.5/6.18-rc2
Patch: b5abafd0aa8d7bcb935c8f91e4cfc2f2820759e4/20863bb7fbb016379f8227122edfabc5c799bc79/8004d4b8cbf1bd68a23c160d57287e177c82cc69/7e0c8aaf4e28918abded547a5147c7d52c4af7d2/cebfbf40056a4d858b2a3ca59a69936d599bd209/620f3b0ede9c5cb4976cd0457d0b04ad551e5d6b/eadc49999fa994d6fbd70c332bd5d5051cc42261/56094ad3eaa21e6621396cc33811d8f72847a834
Timeline
04/16/2025 CVE reserved10/30/2025 Advisory disclosed
10/30/2025 VulDB entry created
02/16/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2025-40105 (🔒)
GCVE (CVE): GCVE-0-2025-40105
GCVE (VulDB): GCVE-100-330549
CERT Bund: WID-SEC-2025-2450 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 10/30/2025 14:07Updated: 02/16/2026 00:06
Changes: 10/30/2025 14:07 (58), 10/31/2025 08:45 (2), 10/31/2025 09:59 (7), 12/21/2025 23:48 (1), 02/16/2026 00:06 (1)
Complete: 🔍
Cache ID: 216::103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.