In the Linux kernel, the following vulnerability has been resolved:
ext4: check dot and dotdot of dx_root before making dir indexed
Syzbot reports a issue as follows: ============================================ BUG: unable to handle page fault for address: ffffed11022e24fe PGD 23ffee067 P4D 23ffee067 PUD 0 Oops: Oops: 0000 [#1] PREEMPT SMP KASAN PTI CPU: 0 PID: 5079 Comm: syz-executor306 Not tainted 6.10.0-rc5-g55027e689933 #0 Call Trace: <TASK> make_indexed_dir+0xdaf/0x13c0 fs/ext4/namei.c:2341 ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2451 ext4_rename fs/ext4/namei.c:3936 [inline] ext4_rename2+0x26e5/0x4370 fs/ext4/namei.c:4214 [...] ============================================
The immediate cause of this problem is that there is only one valid dentry for the block to be split during do_split, so split==0 results in out of bounds accesses to the map triggering the issue.
do_split unsigned split dx_make_map count = 1 split = count/2 = 0; continued = hash2 == map[split - 1].hash; ---> map[4294967295]
The maximum length of a filename is 255 and the minimum block size is 1024, so it is always guaranteed that the number of entries is greater than or equal to 2 when do_split() is called.
But syzbot's crafted image has no dot and dotdot in dir, and the dentry distribution in dirblock is as follows:
bus dentry1 hole dentry2 free |xx--|xx-------------|...............|xx-------------|...............| 0 12 (8+248)=256 268 256 524 (8+256)=264 788 236 1024
So when renaming dentry1 increases its name_len length by 1, neither hole nor free is sufficient to hold the new dentry, and make_indexed_dir() is called.
In make_indexed_dir() it is assumed that the first two entries of the dirblock must be dot and dotdot, so bus and dentry1 are left in dx_root because they are treated as dot and dotdot, and only dentry2 is moved to the new leaf block. That's why count is equal to 1.
Therefore add the ext4_check_dx_root() helper function to add more sanity checks to dot and dotdot before starting the conversion to avoid the above issue.
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 |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernelUpgrade python-perfUpgrade perfUpgrade kernel-livepatch-5.10.224-212.876Upgrade bpftoolUpgrade kernel-toolsUpgrade kernel-tools-develUpgrade kernel-develUpgrade python-perf-debuginfoUpgrade bpftool-debuginfoUpgrade perf-debuginfoUpgrade kernel-livepatch-5.15.165-110.161Upgrade kernel-debuginfo-common-aarch64Upgrade kernel-headersUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-4.14.353-270.569Upgrade kernel-debuginfoUpgrade kernel-tools-debuginfo | May 20, 2026 | May 20, 2026 |
| Amazon_linux_2023 | — | Upgrade kernel-tools-develUpgrade perf-debuginfoUpgrade kernel-libbpfUpgrade kernel-headersUpgrade kernel-livepatch-6.1.106-116.188Upgrade kernel-debuginfoUpgrade perfUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-debuginfoUpgrade kernel-develUpgrade kernel-libbpf-staticUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-libbpf-develUpgrade kernelUpgrade python3-perfUpgrade kernel-toolsUpgrade bpftool-debuginfoUpgrade kernel-modules-extraUpgrade bpftoolUpgrade kernel-modules-extra-commonUpgrade python3-perf-debuginfo | Jul 23, 2025 | Aug 17, 2024 |
| Debian | — | Upgrade linux-6.1Upgrade linux | Sep 2, 2024 | Aug 17, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade kernelUpgrade python3-perfUpgrade kernel-tools-libs | Nov 11, 2024 | Aug 17, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-toolsUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perfUpgrade kernel-abi-stablelists | Nov 26, 2024 | Aug 17, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade python3-perfUpgrade kernelUpgrade kernel-tools-libsUpgrade kernel-tools | Nov 11, 2024 | Aug 17, 2024 |
| Oracle_linux | — | Upgrade kernel-uek | Oct 16, 2024 | Aug 17, 2024 |
| Redhat_linux | — | Upgrade kernel-rtNo solution existsUpgrade kernel | May 15, 2025 | Aug 17, 2024 |
| Suse | — | Upgrade kernel-source-vanillaUpgrade cluster-md-kmp-rtUpgrade dtb-qcomUpgrade kernel-azure-livepatch-develUpgrade dtb-lgUpgrade kernel-develUpgrade kernel-source-azureUpgrade kernel-default-base-rebuildUpgrade dtb-rockchipUpgrade kernel-64kb-develUpgrade kernel-kvmsmall-livepatch-develUpgrade cluster-md-kmp-azureUpgrade kernel-rtUpgrade dtb-allwinnerUpgrade kselftests-kmp-64kbUpgrade kernel-sourceUpgrade kernel-default-vdsoUpgrade kernel-obs-buildUpgrade kernel-zfcpdumpUpgrade gfs2-kmp-azureUpgrade kernel-rt_debug-develUpgrade kernel-devel-azureUpgrade kernel-rt-optionalUpgrade dlm-kmp-64kbUpgrade kernel-azure-optionalUpgrade kernel-devel-rtUpgrade kernel-rt-extraUpgrade kernel-debugUpgrade dtb-mediatekUpgrade kernel-64kbUpgrade dtb-freescaleUpgrade kernel-default-livepatchUpgrade kernel-default-develUpgrade ocfs2-kmp-azureUpgrade kselftests-kmp-azureUpgrade kernel-rt-develUpgrade kernel-rt-livepatchUpgrade gfs2-kmp-64kbUpgrade gfs2-kmp-rtUpgrade dtb-exynosUpgrade kernel-64kb-livepatch-develUpgrade gfs2-kmp-defaultUpgrade ocfs2-kmp-64kbUpgrade reiserfs-kmp-64kbUpgrade kernel-azureUpgrade dtb-alteraUpgrade dtb-caviumUpgrade reiserfs-kmp-azureUpgrade kernel-kvmsmall-develUpgrade kernel-azure-develUpgrade dtb-xilinxUpgrade kernel-debug-vdsoUpgrade kernel-default-optionalUpgrade dtb-amazonUpgrade ocfs2-kmp-defaultUpgrade kernel-source-rtUpgrade kernel-syms-azureUpgrade dtb-broadcomUpgrade dtb-amlogicUpgrade kernel-syms-rtUpgrade kernel-default-manUpgrade kernel-64kb-optionalUpgrade kernel-defaultUpgrade kernel-64kb-extraUpgrade kernel-symsUpgrade kernel-debug-develUpgrade kselftests-kmp-defaultUpgrade kernel-kvmsmall-vdsoUpgrade dtb-hisiliconUpgrade kselftests-kmp-rtUpgrade reiserfs-kmp-rtUpgrade kernel-obs-qaUpgrade kernel-azure-baseUpgrade dtb-socionextUpgrade dtb-armUpgrade dtb-apmUpgrade cluster-md-kmp-64kbUpgrade dlm-kmp-azureUpgrade reiserfs-kmp-defaultUpgrade kernel-rt-livepatch-develUpgrade kernel-docsUpgrade kernel-default-baseUpgrade kernel-debug-livepatch-develUpgrade dtb-nvidiaUpgrade dtb-marvellUpgrade dlm-kmp-rtUpgrade kernel-docs-htmlUpgrade kernel-rt_debug-vdsoUpgrade dtb-appleUpgrade ocfs2-kmp-rtUpgrade kernel-azure-vdsoUpgrade dlm-kmp-defaultUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-azure-extraUpgrade dtb-amdUpgrade cluster-md-kmp-defaultUpgrade kernel-macrosUpgrade kernel-kvmsmallUpgrade kernel-rt_debugUpgrade dtb-sprdUpgrade kernel-rt-vdsoUpgrade kernel-default-extraUpgrade kernel-default-livepatch-develUpgrade dtb-renesas | Dec 5, 2025 | Jun 3, 2025 |
| Ubuntu | — | Upgrade linux-image-oracleUpgrade linux-image-5.15.0-125-lowlatencyUpgrade linux-image-oem-24.04Upgrade linux-image-bluefieldUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-1020-awsUpgrade linux-image-intelUpgrade linux-image-gke-5.15Upgrade linux-image-ibm-lts-20.04Upgrade linux-image-gcp-lts-20.04Upgrade linux-image-oemUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-generic-lpaeUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-125-generic-lpaeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-oem-20.04bUpgrade linux-image-virtualUpgrade linux-image-oem-22.04Upgrade linux-image-5.15.0-1055-gkeopUpgrade linux-image-5.4.0-1082-ibmUpgrade linux-image-5.4.0-1135-awsUpgrade linux-image-5.4.0-1140-azureUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-5.15.0-1065-raspiUpgrade linux-image-5.15.0-125-genericUpgrade linux-image-6.8.0-1020-azureUpgrade linux-image-ibmUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-5.15.0-1071-gcpUpgrade linux-image-5.4.0-1054-xilinx-zynqmpUpgrade linux-image-nvidia-6.8Upgrade linux-image-5.4.0-1139-gcpUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-50-generic-64kUpgrade linux-image-generic-64kUpgrade linux-image-azure-lts-20.04Upgrade linux-image-5.4.0-1102-gkeopUpgrade linux-image-5.15.0-125-lowlatency-64kUpgrade linux-image-5.15.0-1038-xilinx-zynqmpUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-5.15.0-1067-nvidiaUpgrade linux-image-6.8.0-1015-gkeUpgrade linux-image-5.15.0-125-generic-64kUpgrade linux-image-gkeop-5.4Upgrade linux-image-5.15.0-1072-awsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-6.8.0-1002-gkeopUpgrade linux-image-5.4.0-200-genericUpgrade linux-image-gkeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-6.8.0-1019-nvidia-64kUpgrade linux-image-gkeop-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-5.4.0-1044-iotUpgrade linux-image-5.4.0-200-lowlatencyUpgrade linux-image-oem-20.04Upgrade linux-image-oracle-lts-20.04Upgrade linux-image-intel-iotgUpgrade linux-image-6.8.0-1017-ibmUpgrade linux-image-5.15.0-1069-gkeUpgrade linux-image-genericUpgrade linux-image-ibm-classicUpgrade linux-image-5.4.0-1123-kvmUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-5.15.0-1067-nvidia-lowlatencyUpgrade linux-image-nvidiaUpgrade linux-image-6.8.0-1018-oemUpgrade linux-image-5.15.0-1065-ibmUpgrade linux-image-oem-22.04aUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-nvidia-64kUpgrade linux-image-5.15.0-1067-intel-iotgUpgrade linux-image-awsUpgrade linux-image-5.4.0-1119-raspiUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-raspiUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-1016-raspiUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-oem-22.04cUpgrade linux-image-6.8.0-1019-nvidia-lowlatencyUpgrade linux-image-azure-cvmUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-5.15.0-1070-oracleUpgrade linux-image-6.8.0-1019-nvidiaUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.8.0-50-lowlatency-64kUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.4.0-1139-azureUpgrade linux-image-5.4.0-200-generic-lpaeUpgrade linux-image-gcpUpgrade linux-image-6.8.0-1020-azure-fdeUpgrade linux-image-aws-lts-20.04Upgrade linux-image-gkeop-5.15Upgrade linux-image-oem-20.04cUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-6.8.0-1019-gcpUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.4.0-1134-oracleUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-6.8.0-1019-nvidia-lowlatency-64kUpgrade linux-image-5.4.0-1094-bluefieldUpgrade linux-image-oem-20.04dUpgrade linux-image-6.8.0-50-lowlatencyUpgrade linux-image-oracle-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-6.8.0-1017-oracle-64kUpgrade linux-image-5.15.0-1075-azureUpgrade linux-image-6.8.0-1017-oracleUpgrade linux-image-5.15.0-1078-azureUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-azure-fdeUpgrade linux-image-raspi2Upgrade linux-image-aws-lts-22.04Upgrade linux-image-kvmUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-oem-22.04dUpgrade linux-image-oem-osp1Upgrade linux-image-azureUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-6.8.0-50-genericUpgrade linux-image-5.15.0-1069-kvmUpgrade linux-image-oem-22.04b | Nov 4, 2024 | Aug 17, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Aug 17, 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