CVE-2026-64449: Linux kernel · staging: vme_user: bound slave read/write to the kern_buf size
Source GCVE Database
Not known to be exploited · CVSS 7.8 High.
Data as of 26 Oct 2026, 13:47 UTC
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 3% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 25 Jul 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
AI-suggested
A fix has been implemented in the Linux kernel to clamp the read/write count against the fixed kernel buffer size and prevent out-of-bounds accesses. Users should update to a Linux kernel version that includes this fix. Since this is not a cloud service, remediation depends on applying the official kernel patch. Patch status is not explicitly confirmed in the provided data; users should consult the official Linux kernel advisories or source repositories for the exact fixed versions and apply updates accordingly.
Description
In the Linux kernel, the following vulnerability has been resolved: staging: vme_user: bound slave read/write to the kern_buf size The SLAVE-path helpers buffer_to_user() and buffer_from_user() copy 'count' bytes into/out of the fixed-size kern_buf (size_buf == PCI_BUF_SIZE == 0x20000, 128 KiB) using *ppos as the offset, without bounding *ppos + count against size_buf. vme_user_write()/vme_user_read() only clamp count to the VME window size (image_size = vme_get_size(resource)), which VME_SET_SLAVE sets from the user-supplied slave.size -- validated against the VME address space (up to VME_A32_MAX = 4 GiB), not against PCI_BUF_SIZE. When the window exceeds 128 KiB, a write()/read() copies past the kern_buf allocation. Clamp count against size_buf in both helpers, with an early return when *ppos is already at/after the buffer end. *ppos is >= 0 here (the caller rejects negative offsets), so size_buf - *ppos cannot wrap. This mirrors the existing clamp in the MASTER-path helpers resource_to_user() / resource_from_user(), and matches the read()/write() convention of a short transfer at end-of-buffer. Found by static analysis (CodeQL taint tracking + CBMC bounded model checking) and confirmed dynamically under KASAN with the vme_fake bridge: BUG: KASAN: slab-out-of-bounds in _copy_from_user+0x2d/0x80 Write of size 262144 at addr ffff888004100000 by task trigger/68 _copy_from_user+0x2d/0x80 vme_user_write+0x13e/0x240 [vme_user] vfs_write+0x1b8/0x7a0 ksys_write+0xb8/0x150
References
- nvd.nist.gov/vuln/detail/CVE-2026-64449 (opens in a new tab)
- git.kernel.org/stable/c/1b495fa0d4927c88d88bf346bf311f2e26e860ed (opens in a new tab)
- git.kernel.org/stable/c/65358d89dc9f1c25d9364b2b3ef0f3b47717f9ed (opens in a new tab)
- git.kernel.org/stable/c/8eff7cd4817e14dbe3b9952cce55ef52d1d38940 (opens in a new tab)
- git.kernel.org/stable/c/9f32f38265014fac7f5dc9490fb01a638ce6e121 (opens in a new tab)
- git.kernel.org/stable/c/adc8b9c30d716c362646edb45662aa1c641a154a (opens in a new tab)
- git.kernel.org/stable/c/e99f2df433c63c86c93de1e5f08f16e404388756 (opens in a new tab)