Unscored severity · published Oct 23, 2026
CVE-2026-99063
dm ioctl: don't let data_start run past the buffer
New
–
CVSS
0.2%
EPSS
No
On KEV
Description
In the Linux kernel, the following vulnerability has been resolved:
dm ioctl: don't let data_start run past the buffer
struct dm_ioctl has seven bytes of trailing padding, so the smallest
buffer userspace is allowed to ask for, offsetof(struct dm_ioctl, data),
is seven bytes shorter than sizeof(struct dm_ioctl).
get_result_buffer() sets data_start to sizeof(struct dm_ioctl) without
looking at how big the buffer actually is. Ask for the minimum and
data_start ends up seven bytes past the end. Callers add it to
data_size, and ctl_ioctl() copies that much back to userspace:
BUG: KASAN: slab-out-of-bounds in _copy_to_user+0xad/0xd0
Read of size 312 at addr ffff8880169e4c00 by task repro-dm/140
ctl_ioctl+0x5e3/0xcb0
dm_ctl_ioctl+0x25/0x40
allocated 305-byte region [ffff8880169e4c00, ffff8880169e4d31)
A DM_LIST_DEVICES with data_size set to 305 is enough to hit it, and the
seven bytes that leak are whatever sat next to the allocation.
Clamp data_start to the buffer size.
Note that this is not a security bug because the out-of-bounds read can
only be triggered by root.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 6% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
LI
Linux · Linux
76c072b48e39e9291fbf02d6c912cf27d65e093d before 98195e822343a656b92e235847ab3e72b1a3f920; 76c072b48e39e9291fbf02d6c912cf27d65e093d before e5c3f3d8935ecc64c962fb66e6a86dbf79218f61; 76c072b48e39e9291fbf02d6c912cf27d65e093d before 5680b6fb3054677d4ee65d3baba24b649f1b430e; 76c072b48e39e9291fbf02d6c912cf27d65e093d before 725b49c689bbb29ef740b0d6b5ea9390baa9a695; 76c072b48e39e9291fbf02d6c912cf27d65e093d before 9b3fcf519d370df94a56f3b272d9eddffffa5be8; 2.6.25 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-99063
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-99063
git.kernel.org
https://git.kernel.org/stable/c/5680b6fb3054677d4ee65d3baba24b649f1b430e
git.kernel.org
https://git.kernel.org/stable/c/725b49c689bbb29ef740b0d6b5ea9390baa9a695
git.kernel.org
https://git.kernel.org/stable/c/98195e822343a656b92e235847ab3e72b1a3f920
git.kernel.org
https://git.kernel.org/stable/c/9b3fcf519d370df94a56f3b272d9eddffffa5be8
git.kernel.org
https://git.kernel.org/stable/c/e5c3f3d8935ecc64c962fb66e6a86dbf79218f61
More from Linux
9.8
CVE-2025-39682
tls: fix handling of zero-length records on the rx_list
8.8
CVE-2026-53266
netfilter: bridge: make ebt_snat ARP rewrite writable
7.8
CVE-2026-53362
ipv6: account for fraggap on the paged allocation path
7.8
CVE-2026-31431
crypto: algif_aead - Revert to operating out-of-place
7.8
CVE-2025-38352
posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del()
