Linux Kernel up to 6.18-rc1 ext4 ext4_es_cache_extent infinite loop

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.5 | $0-$5k | 0.00 |
Summary
A vulnerability marked as critical has been reported in Linux Kernel up to 6.18-rc1. This affects the function ext4_es_cache_extent of the component ext4. The manipulation leads to infinite loop.
This vulnerability is uniquely identified as CVE-2025-40167. No exploit exists.
It is suggested to upgrade the affected component.
Details
A vulnerability, which was classified as critical, has been found in Linux Kernel up to 6.18-rc1. This issue affects the function ext4_es_cache_extent of the component ext4. The manipulation with an unknown input leads to a infinite loop vulnerability. Using CWE to declare the problem leads to CWE-835. The product contains an iteration or loop with an exit condition that cannot be reached, i.e., an infinite loop. Impacted is availability. The summary by CVE is:
In the Linux kernel, the following vulnerability has been resolved: ext4: detect invalid INLINE_DATA + EXTENTS flag combination syzbot reported a BUG_ON in ext4_es_cache_extent() when opening a verity file on a corrupted ext4 filesystem mounted without a journal. The issue is that the filesystem has an inode with both the INLINE_DATA and EXTENTS flags set: EXT4-fs error (device loop0): ext4_cache_extents:545: inode #15: comm syz.0.17: corrupted extent tree: lblk 0 < prev 66 Investigation revealed that the inode has both flags set: DEBUG: inode 15 - flag=1, i_inline_off=164, has_inline=1, extents_flag=1 This is an invalid combination since an inode should have either: - INLINE_DATA: data stored directly in the inode - EXTENTS: data stored in extent-mapped blocks Having both flags causes ext4_has_inline_data() to return true, skipping extent tree validation in __ext4_iget(). The unvalidated out-of-order extents then trigger a BUG_ON in ext4_es_cache_extent() due to integer underflow when calculating hole sizes. Fix this by detecting this invalid flag combination early in ext4_iget() and rejecting the corrupted inode.
It is possible to read the advisory at git.kernel.org. The identification of this vulnerability is CVE-2025-40167 since 04/16/2025. Technical details of the vulnerability are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 275225 (Linux Distros Unpatched Vulnerability : CVE-2025-40167), 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 4954d297c91d292630ab43ba4d195dc371ce65d3/f061f7c331fc16250fc82aa68964f35821687217/2e9e10657b04152ed0d6ecae8d0c02a3405e28f5/1437c95ab2a28b138d4521653583729f61ccb48b/cb6039b68efa547b676a8a10fc4618d9d1865c23/de985264eef64be8a90595908f2e6a87946dad34/1f5ccd22ff482639133f2a0fe08f6d19d0e68717/1d3ad183943b38eec2acf72a0ae98e635dc8456b 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 (275225) and CERT Bund (WID-SEC-2025-2579). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Affected
- Google Container-Optimized OS
- Debian Linux
- Amazon Linux 2
- Red Hat Enterprise Linux
- Ubuntu Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- Open Source Linux Kernel
- RESF Rocky Linux
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: 5.7VulDB Meta Temp Score: 5.5
VulDB Base Score: 5.7
VulDB Temp Score: 5.5
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: Infinite loopCWE: CWE-835 / 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: 275225
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2025-40167
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: 4954d297c91d292630ab43ba4d195dc371ce65d3/f061f7c331fc16250fc82aa68964f35821687217/2e9e10657b04152ed0d6ecae8d0c02a3405e28f5/1437c95ab2a28b138d4521653583729f61ccb48b/cb6039b68efa547b676a8a10fc4618d9d1865c23/de985264eef64be8a90595908f2e6a87946dad34/1f5ccd22ff482639133f2a0fe08f6d19d0e68717/1d3ad183943b38eec2acf72a0ae98e635dc8456b
Timeline
04/16/2025 CVE reserved11/12/2025 Advisory disclosed
11/12/2025 VulDB entry created
02/08/2026 VulDB entry last update
Sources
Vendor: kernel.orgAdvisory: git.kernel.org
Status: Confirmed
CVE: CVE-2025-40167 (🔒)
GCVE (CVE): GCVE-0-2025-40167
GCVE (VulDB): GCVE-100-332147
CERT Bund: WID-SEC-2025-2579 - Linux Kernel: Mehrere Schwachstellen
Entry
Created: 11/12/2025 13:31Updated: 02/08/2026 10:11
Changes: 11/12/2025 13:31 (59), 11/13/2025 18:21 (2), 12/21/2025 04:02 (7), 12/30/2025 21:50 (1), 02/08/2026 10:11 (1)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.