In the Linux kernel, the following vulnerability has been resolved:
nbd: fix race between nbd_alloc_config() and module removal
When nbd module is being removing, nbd_alloc_config() may be called concurrently by nbd_genl_connect(), although try_module_get() will return false, but nbd_alloc_config() doesn't handle it.
The race may lead to the leak of nbd_config and its related resources (e.g, recv_workq) and oops in nbd_read_stat() due to the unload of nbd module as shown below:
BUG: kernel NULL pointer dereference, address: 0000000000000040 Oops: 0000 [#1] SMP PTI CPU: 5 PID: 13840 Comm: kworker/u17:33 Not tainted 5.14.0+ #1 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996) Workqueue: knbd16-recv recv_work [nbd] RIP: 0010:nbd_read_stat.cold+0x130/0x1a4 [nbd] Call Trace: recv_work+0x3b/0xb0 [nbd] process_one_work+0x1ed/0x390 worker_thread+0x4a/0x3d0 kthread+0x12a/0x150 ret_from_fork+0x22/0x30
Fixing it by checking the return value of try_module_get() in nbd_alloc_config(). As nbd_alloc_config() may return ERR_PTR(-ENODEV), assign nbd->config only when nbd_alloc_config() succeeds to ensure the value of nbd->config is binary (valid or NULL).
Also adding a debug message to check the reference counter of nbd_config during module removal.
CVSS Details
- CVSS 3.1 Base Score: 4.7
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:H/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 kernel-develUpgrade perfUpgrade kernel-livepatch-4.14.285-215.501Upgrade kernel-livepatch-5.10.126-117.518Upgrade kernel-tools-develUpgrade kernel-tools-debuginfoUpgrade kernel-debuginfo-common-aarch64Upgrade bpftoolUpgrade bpftool-debuginfoUpgrade kernel-debuginfoUpgrade kernel-headersUpgrade kernel-debuginfo-common-x86_64Upgrade python-perfUpgrade kernelUpgrade kernel-toolsUpgrade perf-debuginfoUpgrade python-perf-debuginfoUpgrade kernel-livepatch-5.15.50-23.125 | May 21, 2025 | Feb 26, 2025 |
| Debian | — | Upgrade linux | Feb 27, 2025 | Feb 27, 2025 |
| Huawei Euleros 2_0_sp12 | — | Upgrade bpftoolUpgrade python3-perfUpgrade kernelUpgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel-abi-stablelists | Jun 11, 2025 | Feb 26, 2025 |
| Huawei Euleros 2_0_sp13 | — | Upgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernelUpgrade bpftoolUpgrade python3-perf | Jun 11, 2025 | Feb 26, 2025 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Feb 26, 2025 |
| Ubuntu | — | Upgrade linux-gcp-5.15Upgrade linux-azure-5.4Upgrade linux-realtimeUpgrade linux-hwe-5.4Upgrade linux-gcp-fipsUpgrade linux-bluefieldUpgrade linux-iotUpgrade linux-lowlatency-hwe-5.15Upgrade linux-gcp-4.15Upgrade linux-hweUpgrade linux-gcp-5.4Upgrade linux-raspi-5.4Upgrade linux-azure-4.15Upgrade linux-gcpUpgrade linux-awsUpgrade linux-azure-5.15Upgrade linux-nvidiaUpgrade linux-oracle-5.15Upgrade linux-lowlatencyUpgrade linux-aws-5.4Upgrade linux-azure-fde-5.15Upgrade linux-kvmUpgrade linux-oracle-5.4Upgrade linux-fipsUpgrade linux-aws-5.15Upgrade linuxUpgrade linux-oracleUpgrade linux-aws-fipsUpgrade linux-raspiUpgrade linux-intel-iotgUpgrade linux-gkeopUpgrade linux-intel-iotg-5.15Upgrade linux-azureUpgrade linux-hwe-5.15Upgrade linux-gkeUpgrade linux-ibm-5.4Upgrade linux-aws-hweUpgrade linux-ibmUpgrade linux-riscv-5.15Upgrade linux-azure-fips | Mar 3, 2025 | Feb 26, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Feb 26, 2025 |
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