Overview
About vulnerability
In the Linux kernel, the following vulnerability has been resolved:
f2fs: fix to avoid dirent corruption
As Al reported in link[1]:
f2fs_rename() … if (old_dir != new_dir && !whiteout) f2fs_set_link(old_inode, old_dir_entry, old_dir_page, new_dir); else f2fs_put_page(old_dir_page, 0);
You want correct inumber in the “..” link. And cross-directory rename does move the source to new parent, even if you’d been asked to leave a whiteout in the old place.
[1] https://lore.kernel.org/all/20231017055040.GN800259@ZenIV/
With below testcase, it may cause dirent corruption, due to it missed to call f2fs_set_link() to update “..” link to new directory.
- mkdir -p dir/foo
- renameat2 -w dir/foo bar
[ASSERT] (__chk_dots_dentries:1421) –> Bad inode number[0x4] for ‘..’, parent parent ino is [0x3] [FSCK] other corrupted bugs [Fail]
Details
- Affected product:
- AlmaLinux 9.2 ESU , Amazon Linux 2 ELS , CentOS 8.4 ELS , CentOS 8.5 ELS , CentOS Stream 8 ELS , Debian 10 ELS , Oracle Linux 7 ELS , TuxCare 9.6 ESU , Ubuntu 16.04 ELS , Ubuntu 18.04 ELS , Ubuntu 20.04 ELS
- Affected packages:
- linux @ 4.15.0 (+12 more)
Fixes
KernelCare state
Live-patch status from KernelCare for each operating system.
| Operating system | Status | Covered kernels |
|---|---|---|
| Debian 10 | Released |
29 kernels
|
| Debian 10 cloud | Released |
22 kernels
|
| Proxmox VE 6 | Released |
41 kernels
|
| Proxmox VE 7 5.15 | Released |
43 kernels
|
| Ubuntu 14.04 HWE ESM | Will Not Fix | — |
| Ubuntu 16.04 | Released |
13 kernels
|
| Ubuntu 16.04 AWS ESM | Will Not Fix | — |
| Ubuntu 16.04 AWS HWE ESM | Will Not Fix | — |
| Ubuntu 16.04 Azure ESM | Will Not Fix | — |
| Ubuntu 16.04 ESM | Will Not Fix | — |
| Ubuntu 16.04 GCP ESM | Will Not Fix | — |
| Ubuntu 16.04 HWE ESM | Will Not Fix | — |
| Ubuntu 18.04 | Released |
9 kernels
|
| Ubuntu 18.04 AWS | Will Not Fix | — |
| Ubuntu 18.04 AWS Focal | Released |
56 kernels
|
| Ubuntu 18.04 Azure Focal | Released |
58 kernels
|
| Ubuntu 18.04 HWE Focal | Released |
69 kernels
|
| Ubuntu 18.04 HWE GCP | Released |
15 kernels
|
| Ubuntu 20.04 | Released |
104 kernels
|
| Ubuntu 20.04 AWS | Released |
87 kernels
|
| Ubuntu 20.04 Azure | Released |
78 kernels
|
| Ubuntu 20.04 GCP | Released |
10 kernels
|
| Ubuntu 20.04 HWE AWS | Released |
35 kernels
|
| Ubuntu 20.04 HWE Azure | Released |
19 kernels
|
| Ubuntu 22.04 | Released |
48 kernels
|
| Ubuntu 22.04 AWS | Released |
42 kernels
|
| Ubuntu 22.04 Azure | Released |
39 kernels
|