vulnerability

Ubuntu: (Multiple Advisories) (CVE-2024-50265): Linux kernel vulnerabilities

Severity
5
CVSS
(AV:L/AC:L/Au:S/C:N/I:N/A:C)
Published
Nov 19, 2024
Added
Feb 20, 2025
Modified
Aug 18, 2025

Description

In the Linux kernel, the following vulnerability has been resolved:

ocfs2: remove entry once instead of null-ptr-dereference in ocfs2_xa_remove()

Syzkaller is able to provoke null-ptr-dereference in ocfs2_xa_remove():

[ 57.319872] (a.out,1161,7):ocfs2_xa_remove:2028 ERROR: status = -12
[ 57.320420] (a.out,1161,7):ocfs2_xa_cleanup_value_truncate:1999 ERROR: Partial truncate while removing xattr overlay.upper. Leaking 1 clusters and removing the entry
[ 57.321727] BUG: kernel NULL pointer dereference, address: 0000000000000004
[...]
[ 57.325727] RIP: 0010:ocfs2_xa_block_wipe_namevalue+0x2a/0xc0
[...]
[ 57.331328] Call Trace:
[ 57.331477] <TASK>
[...]
[ 57.333511] ? do_user_addr_fault+0x3e5/0x740
[ 57.333778] ? exc_page_fault+0x70/0x170
[ 57.334016] ? asm_exc_page_fault+0x2b/0x30
[ 57.334263] ? __pfx_ocfs2_xa_block_wipe_namevalue+0x10/0x10
[ 57.334596] ? ocfs2_xa_block_wipe_namevalue+0x2a/0xc0
[ 57.334913] ocfs2_xa_remove_entry+0x23/0xc0
[ 57.335164] ocfs2_xa_set+0x704/0xcf0
[ 57.335381] ? _raw_spin_unlock+0x1a/0x40
[ 57.335620] ? ocfs2_inode_cache_unlock+0x16/0x20
[ 57.335915] ? trace_preempt_on+0x1e/0x70
[ 57.336153] ? start_this_handle+0x16c/0x500
[ 57.336410] ? preempt_count_sub+0x50/0x80
[ 57.336656] ? _raw_read_unlock+0x20/0x40
[ 57.336906] ? start_this_handle+0x16c/0x500
[ 57.337162] ocfs2_xattr_block_set+0xa6/0x1e0
[ 57.337424] __ocfs2_xattr_set_handle+0x1fd/0x5d0
[ 57.337706] ? ocfs2_start_trans+0x13d/0x290
[ 57.337971] ocfs2_xattr_set+0xb13/0xfb0
[ 57.338207] ? dput+0x46/0x1c0
[ 57.338393] ocfs2_xattr_trusted_set+0x28/0x30
[ 57.338665] ? ocfs2_xattr_trusted_set+0x28/0x30
[ 57.338948] __vfs_removexattr+0x92/0xc0
[ 57.339182] __vfs_removexattr_locked+0xd5/0x190
[ 57.339456] ? preempt_count_sub+0x50/0x80
[ 57.339705] vfs_removexattr+0x5f/0x100
[...]

Reproducer uses faultinject facility to fail ocfs2_xa_remove() ->
ocfs2_xa_value_truncate() with -ENOMEM.

In this case the comment mentions that we can return 0 if
ocfs2_xa_cleanup_value_truncate() is going to wipe the entry
anyway. But the following 'rc' check is wrong and execution flow do
'ocfs2_xa_remove_entry(loc);' twice:
* 1st: in ocfs2_xa_cleanup_value_truncate();
* 2nd: returning back to ocfs2_xa_remove() instead of going to 'out'.

Fix this by skipping the 2nd removal of the same entry and making
syzkaller repro happy.

Solutions

ubuntu-upgrade-linux-image-4-15-0-1134-fipsubuntu-upgrade-linux-image-4-15-0-1141-oracleubuntu-upgrade-linux-image-4-15-0-1162-kvmubuntu-upgrade-linux-image-4-15-0-1172-gcpubuntu-upgrade-linux-image-4-15-0-1179-awsubuntu-upgrade-linux-image-4-15-0-1187-azureubuntu-upgrade-linux-image-4-15-0-2080-gcp-fipsubuntu-upgrade-linux-image-4-15-0-2096-azure-fipsubuntu-upgrade-linux-image-4-15-0-2117-aws-fipsubuntu-upgrade-linux-image-4-15-0-236-genericubuntu-upgrade-linux-image-4-15-0-236-lowlatencyubuntu-upgrade-linux-image-4-4-0-1112-fipsubuntu-upgrade-linux-image-4-4-0-1142-awsubuntu-upgrade-linux-image-4-4-0-1143-kvmubuntu-upgrade-linux-image-4-4-0-1180-awsubuntu-upgrade-linux-image-4-4-0-267-genericubuntu-upgrade-linux-image-4-4-0-267-lowlatencyubuntu-upgrade-linux-image-5-15-0-1021-nvidia-tegra-igxubuntu-upgrade-linux-image-5-15-0-1021-nvidia-tegra-igx-rtubuntu-upgrade-linux-image-5-15-0-1033-nvidia-tegraubuntu-upgrade-linux-image-5-15-0-1033-nvidia-tegra-rtubuntu-upgrade-linux-image-5-15-0-1044-xilinx-zynqmpubuntu-upgrade-linux-image-5-15-0-1060-gkeopubuntu-upgrade-linux-image-5-15-0-1070-ibmubuntu-upgrade-linux-image-5-15-0-1072-nvidiaubuntu-upgrade-linux-image-5-15-0-1072-nvidia-lowlatencyubuntu-upgrade-linux-image-5-15-0-1072-raspiubuntu-upgrade-linux-image-5-15-0-1073-intel-iotgubuntu-upgrade-linux-image-5-15-0-1074-ibmubuntu-upgrade-linux-image-5-15-0-1075-gkeubuntu-upgrade-linux-image-5-15-0-1075-oracleubuntu-upgrade-linux-image-5-15-0-1076-kvmubuntu-upgrade-linux-image-5-15-0-1077-gcpubuntu-upgrade-linux-image-5-15-0-1078-awsubuntu-upgrade-linux-image-5-15-0-1080-awsubuntu-upgrade-linux-image-5-15-0-1081-azureubuntu-upgrade-linux-image-5-15-0-1081-azure-fdeubuntu-upgrade-linux-image-5-15-0-133-genericubuntu-upgrade-linux-image-5-15-0-133-generic-64kubuntu-upgrade-linux-image-5-15-0-133-generic-lpaeubuntu-upgrade-linux-image-5-15-0-133-lowlatencyubuntu-upgrade-linux-image-5-15-0-133-lowlatency-64kubuntu-upgrade-linux-image-5-15-0-134-genericubuntu-upgrade-linux-image-5-15-0-134-generic-64kubuntu-upgrade-linux-image-5-15-0-134-generic-lpaeubuntu-upgrade-linux-image-5-4-0-1048-iotubuntu-upgrade-linux-image-5-4-0-1058-xilinx-zynqmpubuntu-upgrade-linux-image-5-4-0-1086-ibmubuntu-upgrade-linux-image-5-4-0-1099-bluefieldubuntu-upgrade-linux-image-5-4-0-1116-fipsubuntu-upgrade-linux-image-5-4-0-1127-kvmubuntu-upgrade-linux-image-5-4-0-1129-raspiubuntu-upgrade-linux-image-5-4-0-1138-oracleubuntu-upgrade-linux-image-5-4-0-1140-awsubuntu-upgrade-linux-image-5-4-0-1142-awsubuntu-upgrade-linux-image-5-4-0-1143-gcpubuntu-upgrade-linux-image-5-4-0-1145-azureubuntu-upgrade-linux-image-5-4-0-208-genericubuntu-upgrade-linux-image-5-4-0-208-generic-lpaeubuntu-upgrade-linux-image-5-4-0-208-lowlatencyubuntu-upgrade-linux-image-6-11-0-1005-realtimeubuntu-upgrade-linux-image-6-11-0-1008-raspiubuntu-upgrade-linux-image-6-11-0-1009-awsubuntu-upgrade-linux-image-6-11-0-1009-azureubuntu-upgrade-linux-image-6-11-0-1009-azure-fdeubuntu-upgrade-linux-image-6-11-0-1009-gcpubuntu-upgrade-linux-image-6-11-0-1010-lowlatencyubuntu-upgrade-linux-image-6-11-0-1010-lowlatency-64kubuntu-upgrade-linux-image-6-11-0-1011-oracleubuntu-upgrade-linux-image-6-11-0-1011-oracle-64kubuntu-upgrade-linux-image-6-11-0-1015-oemubuntu-upgrade-linux-image-6-11-0-18-genericubuntu-upgrade-linux-image-6-11-0-18-generic-64kubuntu-upgrade-linux-image-6-8-0-1010-gkeopubuntu-upgrade-linux-image-6-8-0-1014-azure-nvidiaubuntu-upgrade-linux-image-6-8-0-1023-gkeubuntu-upgrade-linux-image-6-8-0-1024-ibmubuntu-upgrade-linux-image-6-8-0-1024-oracleubuntu-upgrade-linux-image-6-8-0-1024-oracle-64kubuntu-upgrade-linux-image-6-8-0-1026-nvidiaubuntu-upgrade-linux-image-6-8-0-1026-nvidia-64kubuntu-upgrade-linux-image-6-8-0-1026-nvidia-lowlatencyubuntu-upgrade-linux-image-6-8-0-1026-nvidia-lowlatency-64kubuntu-upgrade-linux-image-6-8-0-1026-oemubuntu-upgrade-linux-image-6-8-0-1027-awsubuntu-upgrade-linux-image-6-8-0-1027-azureubuntu-upgrade-linux-image-6-8-0-1027-azure-fdeubuntu-upgrade-linux-image-6-8-0-1028-gcpubuntu-upgrade-linux-image-6-8-0-1028-gcp-64kubuntu-upgrade-linux-image-6-8-0-1028-raspiubuntu-upgrade-linux-image-6-8-0-2023-raspi-realtimeubuntu-upgrade-linux-image-6-8-0-58-genericubuntu-upgrade-linux-image-6-8-0-58-generic-64kubuntu-upgrade-linux-image-6-8-0-58-lowlatencyubuntu-upgrade-linux-image-6-8-0-58-lowlatency-64kubuntu-upgrade-linux-image-6-8-1-1020-realtimeubuntu-upgrade-linux-image-awsubuntu-upgrade-linux-image-aws-fipsubuntu-upgrade-linux-image-aws-hweubuntu-upgrade-linux-image-aws-lts-18-04ubuntu-upgrade-linux-image-aws-lts-20-04ubuntu-upgrade-linux-image-aws-lts-22-04ubuntu-upgrade-linux-image-aws-lts-24-04ubuntu-upgrade-linux-image-azureubuntu-upgrade-linux-image-azure-cvmubuntu-upgrade-linux-image-azure-fdeubuntu-upgrade-linux-image-azure-fde-lts-22-04ubuntu-upgrade-linux-image-azure-fde-lts-24-04ubuntu-upgrade-linux-image-azure-fipsubuntu-upgrade-linux-image-azure-lts-18-04ubuntu-upgrade-linux-image-azure-lts-20-04ubuntu-upgrade-linux-image-azure-lts-22-04ubuntu-upgrade-linux-image-azure-lts-24-04ubuntu-upgrade-linux-image-azure-nvidiaubuntu-upgrade-linux-image-bluefieldubuntu-upgrade-linux-image-fipsubuntu-upgrade-linux-image-gcpubuntu-upgrade-linux-image-gcp-64kubuntu-upgrade-linux-image-gcp-64k-lts-24-04ubuntu-upgrade-linux-image-gcp-fipsubuntu-upgrade-linux-image-gcp-lts-18-04ubuntu-upgrade-linux-image-gcp-lts-20-04ubuntu-upgrade-linux-image-gcp-lts-22-04ubuntu-upgrade-linux-image-gcp-lts-24-04ubuntu-upgrade-linux-image-genericubuntu-upgrade-linux-image-generic-64kubuntu-upgrade-linux-image-generic-64k-hwe-20-04ubuntu-upgrade-linux-image-generic-64k-hwe-22-04ubuntu-upgrade-linux-image-generic-64k-hwe-24-04ubuntu-upgrade-linux-image-generic-hwe-16-04ubuntu-upgrade-linux-image-generic-hwe-18-04ubuntu-upgrade-linux-image-generic-hwe-20-04ubuntu-upgrade-linux-image-generic-hwe-22-04ubuntu-upgrade-linux-image-generic-hwe-24-04ubuntu-upgrade-linux-image-generic-lpaeubuntu-upgrade-linux-image-generic-lpae-hwe-20-04ubuntu-upgrade-linux-image-generic-lts-xenialubuntu-upgrade-linux-image-gkeubuntu-upgrade-linux-image-gke-5-15ubuntu-upgrade-linux-image-gkeopubuntu-upgrade-linux-image-gkeop-5-15ubuntu-upgrade-linux-image-gkeop-6-8ubuntu-upgrade-linux-image-ibmubuntu-upgrade-linux-image-ibm-classicubuntu-upgrade-linux-image-ibm-lts-20-04ubuntu-upgrade-linux-image-ibm-lts-24-04ubuntu-upgrade-linux-image-intelubuntu-upgrade-linux-image-intel-iotgubuntu-upgrade-linux-image-kvmubuntu-upgrade-linux-image-lowlatencyubuntu-upgrade-linux-image-lowlatency-64kubuntu-upgrade-linux-image-lowlatency-64k-hwe-20-04ubuntu-upgrade-linux-image-lowlatency-64k-hwe-22-04ubuntu-upgrade-linux-image-lowlatency-hwe-16-04ubuntu-upgrade-linux-image-lowlatency-hwe-18-04ubuntu-upgrade-linux-image-lowlatency-hwe-20-04ubuntu-upgrade-linux-image-lowlatency-hwe-22-04ubuntu-upgrade-linux-image-lowlatency-lts-xenialubuntu-upgrade-linux-image-nvidiaubuntu-upgrade-linux-image-nvidia-6-8ubuntu-upgrade-linux-image-nvidia-64kubuntu-upgrade-linux-image-nvidia-64k-6-8ubuntu-upgrade-linux-image-nvidia-64k-hwe-22-04ubuntu-upgrade-linux-image-nvidia-hwe-22-04ubuntu-upgrade-linux-image-nvidia-lowlatencyubuntu-upgrade-linux-image-nvidia-lowlatency-64kubuntu-upgrade-linux-image-nvidia-tegraubuntu-upgrade-linux-image-nvidia-tegra-igxubuntu-upgrade-linux-image-nvidia-tegra-igx-rtubuntu-upgrade-linux-image-nvidia-tegra-rtubuntu-upgrade-linux-image-oemubuntu-upgrade-linux-image-oem-20-04ubuntu-upgrade-linux-image-oem-20-04bubuntu-upgrade-linux-image-oem-20-04cubuntu-upgrade-linux-image-oem-20-04dubuntu-upgrade-linux-image-oem-22-04ubuntu-upgrade-linux-image-oem-22-04aubuntu-upgrade-linux-image-oem-22-04bubuntu-upgrade-linux-image-oem-22-04cubuntu-upgrade-linux-image-oem-22-04dubuntu-upgrade-linux-image-oem-24-04ubuntu-upgrade-linux-image-oem-24-04aubuntu-upgrade-linux-image-oem-24-04bubuntu-upgrade-linux-image-oem-osp1ubuntu-upgrade-linux-image-oracleubuntu-upgrade-linux-image-oracle-64kubuntu-upgrade-linux-image-oracle-64k-lts-24-04ubuntu-upgrade-linux-image-oracle-lts-18-04ubuntu-upgrade-linux-image-oracle-lts-20-04ubuntu-upgrade-linux-image-oracle-lts-22-04ubuntu-upgrade-linux-image-oracle-lts-24-04ubuntu-upgrade-linux-image-raspiubuntu-upgrade-linux-image-raspi-hwe-18-04ubuntu-upgrade-linux-image-raspi-nolpaeubuntu-upgrade-linux-image-raspi-realtimeubuntu-upgrade-linux-image-raspi2ubuntu-upgrade-linux-image-realtimeubuntu-upgrade-linux-image-realtime-hwe-24-04ubuntu-upgrade-linux-image-snapdragon-hwe-18-04ubuntu-upgrade-linux-image-virtualubuntu-upgrade-linux-image-virtual-hwe-16-04ubuntu-upgrade-linux-image-virtual-hwe-18-04ubuntu-upgrade-linux-image-virtual-hwe-20-04ubuntu-upgrade-linux-image-virtual-hwe-22-04ubuntu-upgrade-linux-image-virtual-hwe-24-04ubuntu-upgrade-linux-image-virtual-lts-xenialubuntu-upgrade-linux-image-xilinx-zynqmp

References

    Title
    NEW

    Explore Exposure Command

    Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.