CVE-2024-53167CWE-476

CVE-2024-53167

High · published December 27, 2024

CVSS v3.1
7.5
EPSS
1%
Percentile
50.2
In the wild
Unconfirmed
What it is

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

nfs/blocklayout: Don't attempt unregister for invalid block device

Since commit d869da91cccb ("nfs/blocklayout: Fix premature PR key

unregistration") an unmount of a pNFS SCSI layout-enabled NFS may

dereference a NULL block_device in:

bl_unregister_scsi+0x16/0xe0 [blocklayoutdriver]

bl_free_device+0x70/0x80 [blocklayoutdriver]

bl_free_deviceid_node+0x12/0x30 [blocklayoutdriver]

nfs4_put_deviceid_node+0x60/0xc0 [nfsv4]

nfs4_deviceid_purge_client+0x132/0x190 [nfsv4]

unset_pnfs_layoutdriver+0x59/0x60 [nfsv4]

nfs4_destroy_server+0x36/0x70 [nfsv4]

nfs_free_server+0x23/0xe0 [nfs]

deactivate_locked_super+0x30/0xb0

cleanup_mnt+0xba/0x150

task_work_run+0x59/0x90

syscall_exit_to_user_mode+0x217/0x220

do_syscall_64+0x8e/0x160

This happens because even though we were able to create the

nfs4_deviceid_node, the lookup for the device was unable to attach the

block device to the pnfs_block_dev.

If we never found a block device to register, we can avoid this case with

the PNFS_BDEV_REGISTERED flag. Move the deref behind the test for the

flag.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00644 · 50.2th percentile
Weakness
CWE-476 · NULL Pointer Dereference
Published
2024-12-27T19:15Z
Affected products (2)
ProductVersionsFixed in
linux/linux_kernel≥ 6.11, < 6.11.116.11.11
linux/linux_kernel≥ 6.12, < 6.12.26.12.2
References (3)
EPSS history
Timeline
  • 27 DEC 13:49Z
    nfs/blocklayout: Don't attempt unregister for invalid block device
    cvelistv5