Vulnerability · Published Dec 30, 2025 · Assigned by Linux
CVE-2023-54321driver core: fix potential null-ptr-deref in device_add()
Medium 5.5
In plain English
A medium-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 4% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In the Linux kernel, the following vulnerability has been resolved: driver core: fix potential null-ptr-deref in device_add() I got the following null-ptr-deref report while doing fault injection test: BUG: kernel NULL pointer dereference, address: 0000000000000058 CPU: 2 PID: 278 Comm: 37-i2c-ds2482 Tainted: G B W N 6.1.0-rc3+ RIP: 0010:klist_put+0x2d/0xd0 Call Trace: <TASK> klist_remove+0xf1/0x1c0 device_release_driver_internal+0x196/0x210 bus_remove_device+0x1bd/0x240 device_add+0xd3d/0x1100 w1_add_master_device+0x476/0x490 [wire] ds2482_probe+0x303/0x3e0 [ds2482] This is how it happened: w1_alloc_dev() // The dev->driver is set to w1_master_driver. memcpy(&dev->dev, device, sizeof(struct device)); device_add() bus_add_device() dpm_sysfs_add() // It fails, calls bus_remove_device. // error path bus_remove_device() // The dev->driver is not null, but driver is not bound. __device_release_driver() klist_remove(&dev->p->knode_driver) <-- It causes null-ptr-deref. // normal path bus_probe_device() // It's not called yet. device_bind_driver() If dev->driver is set, in the error path after calling bus_add_device() in device_add(), bus_remove_device() is called, then the device will be detached from driver. But device_bind_driver() is not called yet, so it causes null-ptr-deref while access the 'knode_driver'. To fix this, set dev->driver to null in the error path before calling bus_remove_device().
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | linux | 6.1.20-1 | DEBIAN-CVE-2023-54321 |
| Debian:13 | linux | 6.1.20-1 | DEBIAN-CVE-2023-54321 |
| Debian:14 | linux | 6.1.20-1 | DEBIAN-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux | 5.15.0-75.82 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1038.43 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1040.47 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-azure-6.11 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1041.48.1 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1036.44 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-gcp-6.11 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1036.41 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1022.27 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-hwe-6.11 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1032.35 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-intel-iot-realtime | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1033.38 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1035.40 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-75.82 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-lowlatency-hwe-6.11 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1027.27 | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-nvidia-6.11 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1015.15 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-oem-6.11 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-oem-6.8 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1037.43 | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1032.35 | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:24.04:LTS | linux-riscv-6.14 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2023-54321 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2023-54321 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 57eee3d23e8833ca18708b374c648235691942ba – before 97aa8fb74bbe9aaf4ed5962a784f73b071bd16bf57eee3d23e8833ca18708b374c648235691942ba – before 2c59650d078b1b3f1ea50d5f8ee9fcc537dc02d357eee3d23e8833ca18708b374c648235691942ba – before 7cf515bf9e8c2908dc170ecf2df117162a16c9c557eee3d23e8833ca18708b374c648235691942ba – before 17982304806c5c10924e73f7ca5556e0d737845257eee3d23e8833ca18708b374c648235691942ba – before f6837f34a34973ef6600c08195ed300e24e97317 |
| Linux | Linux | 2.6.26 |
References
- https://git.kernel.org/stable/c/97aa8fb74bbe9aaf4ed5962a784f73b071bd16bf
- https://git.kernel.org/stable/c/2c59650d078b1b3f1ea50d5f8ee9fcc537dc02d3
- https://git.kernel.org/stable/c/7cf515bf9e8c2908dc170ecf2df117162a16c9c5
- https://git.kernel.org/stable/c/17982304806c5c10924e73f7ca5556e0d7378452
- https://git.kernel.org/stable/c/f6837f34a34973ef6600c08195ed300e24e97317