CVE-2026-74641

CVE-2026-74641

High · published August 22, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
2.3
In the wild
Unconfirmed
What it is

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

ALSA: usx2y: bound the hwdep mmap fault offset

snd_us428ctls_vm_fault() turns the faulting page offset into a kernel

address with no bound of any kind:

offset = vmf->pgoff << PAGE_SHIFT;

vaddr = (char *)(...)->us428ctls_sharedmem + offset;

page = virt_to_page(vaddr);

get_page(page);

vmf->page = page;

return 0;

snd_us428ctls_mmap() checks only the length of the mapping, never the

offset, and us428ctls_sharedmem is a single page from

alloc_pages_exact(). For a character device file_mmap_size_max()

returns ULONG_MAX, so the mm layer imposes no ceiling either. Every page

offset above zero resolves to a struct page outside the object, and the

handler installs it into the caller's address space read-write; the vma

is not marked read-only.

The caller picks the page frame with a single mmap() argument and gets

read-write access to a page of kernel memory it does not own; an offset

that lands in an unpopulated vmemmap region oopses instead.

A process that can open the hwdep node of an attached US-X2Y reaches

this after loading the FPGA image through the same node; no capability

check is involved.

On 7.2.0-rc5 (arm64), mmap() with a large offset:

Unable to handle kernel paging request at virtual address fffffdffc45d5ac8

pc : snd_us428ctls_vm_fault+0x68/0x140 [snd_usb_usx2y]

Call trace:

snd_us428ctls_vm_fault+0x68/0x140 [snd_usb_usx2y]

__do_fault

__handle_mm_fault

handle_mm_fault

el0_da

Reject any offset outside the shared region. The pcm hwdep handler in

usx2yhwdeppcm.c computes its address the same way and needs the same

bound.

Discovered by XBOW, triaged by Baul Lee <[email protected]>

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00129 · 2.3th percentile
Published
2026-08-22T20:16Z
References (8)
EPSS history
Timeline
  • 22 AUG 15:32Z
    ALSA: usx2y: bound the hwdep mmap fault offset
    cvelistv5