CVE-2026-22995

In the Linux kernel, the following vulnerability has been resolved: ublk: fix use-after-free in ublk_partition_scan_work A race condition exists between the async partition scan work and device teardown that can lead to a use-after-free of ub->ub_disk: 1. ublk_ctrl_start_dev() schedules partition_scan_work after add_disk() 2. ublk_stop_dev() calls ublk_stop_dev_unlocked() which does: - del_gendisk(ub->ub_disk) - ublk_detach_disk() sets ub->ub_disk = NULL - put_disk() which may free the disk 3. The worker ublk_partition_scan_work() then dereferences ub->ub_disk leading to UAF Fix this by using ublk_get_disk()/ublk_put_disk() in the worker to hold a reference to the disk during the partition scan. The spinlock in ublk_get_disk() synchronizes with ublk_detach_disk() ensuring the worker either gets a valid reference or sees NULL and exits early. Also change flush_work() to cancel_work_sync() to avoid running the partition scan work unnecessarily when the disk is already detached.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc4:*:*:*:*:*:*

History

26 Feb 2026, 17:13

Type Values Removed Values Added
CWE CWE-416
First Time Linux
Linux linux Kernel
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.8
References () https://git.kernel.org/stable/c/72e28774e9644c2bdbb4920842fbf77103a15a85 - () https://git.kernel.org/stable/c/72e28774e9644c2bdbb4920842fbf77103a15a85 - Patch
References () https://git.kernel.org/stable/c/f0d385f6689f37a2828c686fb279121df006b4cb - () https://git.kernel.org/stable/c/f0d385f6689f37a2828c686fb279121df006b4cb - Patch
CPE cpe:2.3:o:linux:linux_kernel:6.19:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

23 Jan 2026, 16:15

Type Values Removed Values Added
New CVE

Information

Published : 2026-01-23 16:15

Updated : 2026-02-26 17:13


NVD link : CVE-2026-22995

Mitre link : CVE-2026-22995

CVE.ORG link : CVE-2026-22995


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-416

Use After Free