In the Linux kernel, the following vulnerability has been resolved:
libfs: fix infinite directory reads for offset dir
After we switch tmpfs dir operations from simple_dir_operations to simple_offset_dir_operations, every rename happened will fill new dentry to dest dir's maple tree(&SHMEM_I(inode)->dir_offsets->mt) with a free key starting with octx->newx_offset, and then set newx_offset equals to free key + 1. This will lead to infinite readdir combine with rename happened at the same time, which fail generic/736 in xfstests(detail show as below).
1. create 5000 files(1 2 3...) under one dir 2. call readdir(man 3 readdir) once, and get one entry 3. rename(entry, "TEMPFILE"), then rename("TEMPFILE", entry) 4. loop 2~3, until readdir return nothing or we loop too many times(tmpfs break test with the second condition)
We choose the same logic what commit 9b378f6ad48cf ("btrfs: fix infinite directory reads") to fix it, record the last_index when we open dir, and do not emit the entry which index >= last_index. The file->private_data now used in offset dir can use directly to do this, and we also update the last_index when we llseek the dir file.
[brauner: only update last_index after seek when offset is zero like Jan suggested]
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 27, 2026 | Jul 27, 2026 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Sep 13, 2024 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-6.8.0-50-generic-64kUpgrade linux-image-genericUpgrade linux-image-nvidia-64kUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-gkeUpgrade linux-image-oracleUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-1017-oracleUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.0-1019-gcpUpgrade linux-image-gkeopUpgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-1020-azureUpgrade linux-image-6.8.0-1020-awsUpgrade linux-image-oem-22.04bUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-virtualUpgrade linux-image-oracle-64kUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-1019-nvidiaUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oem-24.04aUpgrade linux-image-gcpUpgrade linux-image-oem-24.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-oem-22.04aUpgrade linux-image-awsUpgrade linux-image-6.8.0-50-lowlatency-64kUpgrade linux-image-6.8.0-1019-nvidia-64kUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-lowlatency-64kUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.8.0-50-lowlatencyUpgrade linux-image-6.8.0-1018-oemUpgrade linux-image-6.8.0-1020-azure-fdeUpgrade linux-image-6.8.0-1017-oracle-64kUpgrade linux-image-nvidiaUpgrade linux-image-ibm-classicUpgrade linux-image-generic-64kUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-1017-ibmUpgrade linux-image-oem-22.04dUpgrade linux-image-6.8.0-1015-gkeUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-oem-22.04cUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-kvmUpgrade linux-image-nvidia-6.8Upgrade linux-image-6.8.0-1016-raspiUpgrade linux-image-ibmUpgrade linux-image-azure-fdeUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-50-genericUpgrade linux-image-azureUpgrade linux-image-raspiUpgrade linux-image-6.8.0-1019-nvidia-lowlatencyUpgrade linux-image-6.8.0-1019-nvidia-lowlatency-64k | Dec 13, 2024 | Sep 13, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub