CVE-2025-38443

nbd: fix uaf in nbd_genl_connect() error path

State
Published
Severity
Not scored
Published
Jul 25, 2025
Updated
May 11, 2026
Reserved
Apr 16, 2025

Read the record on cve.org

Description

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

nbd: fix uaf in nbd_genl_connect() error path

There is a use-after-free issue in nbd:

block nbd6: Receive control failed (result -104) block nbd6: shutting down sockets ================================================================== BUG: KASAN: slab-use-after-free in recv_work+0x694/0xa80 drivers/block/nbd.c:1022 Write of size 4 at addr ffff8880295de478 by task kworker/u33:0/67

CPU: 2 UID: 0 PID: 67 Comm: kworker/u33:0 Not tainted 6.15.0-rc5-syzkaller-00123-g2c89c1b655c0 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: nbd6-recv recv_work Call Trace: <TASK> __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:408 [inline] print_report+0xc3/0x670 mm/kasan/report.c:521 kasan_report+0xe0/0x110 mm/kasan/report.c:634 check_region_inline mm/kasan/generic.c:183 [inline] kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189 instrument_atomic_read_write include/linux/instrumented.h:96 [inline] atomic_dec include/linux/atomic/atomic-instrumented.h:592 [inline] recv_work+0x694/0xa80 drivers/block/nbd.c:1022 process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238 process_scheduled_works kernel/workqueue.c:3319 [inline] worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400 kthread+0x3c2/0x780 kernel/kthread.c:464 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 </TASK>

nbd_genl_connect() does not properly stop the device on certain error paths after nbd_start_device() has been called. This causes the error path to put nbd->config while recv_work continue to use the config after putting it, leading to use-after-free in recv_work.

This patch moves nbd_start_device() after the backend file creation.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 6497ef8df568afbf5f3e38825a4590ff41611a54 to before cb121c47f364b51776c4db904a6a5a90ab0a7ec5Affected
  • 6497ef8df568afbf5f3e38825a4590ff41611a54 to before 91fa560c73a8126868848ed6cd70607cbf8d87e2Affected
  • 6497ef8df568afbf5f3e38825a4590ff41611a54 to before d46186eb7bbd9a11c145120f2d77effa8d4d44c2Affected
  • 6497ef8df568afbf5f3e38825a4590ff41611a54 to before 8586552df591e0a367eff44af0c586213eeecc3fAffected
  • 6497ef8df568afbf5f3e38825a4590ff41611a54 to before 002aca89753f666d878ca0eb8584c372684ac4baAffected
  • 6497ef8df568afbf5f3e38825a4590ff41611a54 to before aa9552438ebf015fc5f9f890dbfe39f0c53cf37eAffected
LinuxLinux
  • 5.14Affected
  • before 5.14Not affected
  • 5.15.189 through 5.15.*Not affected
  • 6.1.146 through 6.1.*Not affected
  • 6.6.99 through 6.6.*Not affected
  • 6.12.39 through 6.12.*Not affected
  • 6.15.7 through 6.15.*Not affected
  • 6.16 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.