Skip to main content

Linux Kernel EUVDEUVD-2026-55471

| CVE-2026-68370 HIGH
2026-08-10 Linux GHSA-c79g-9hcr-cr2x
7.8
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
7.8 HIGH

AV:L for local-only access, PR:L per non-root usability, AC:L because syzkaller confirms reliable race triggering; C/I/A:H reflects full kernel memory corruption potential.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE
4.7 MEDIUM
AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Aug 14, 2026 - 01:41 vuln.today
CVSS changed
Aug 13, 2026 - 23:37 NVD
7.8 (HIGH)
Patch available
Aug 10, 2026 - 14:18 EUVD
CVE Published
Aug 10, 2026 - 12:03 cve.org
HIGH 7.8
CVE Published
Aug 10, 2026 - 12:03 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

usb: gadget: dummy_hcd: prevent fifo_req reuse during giveback

dummy_hcd embeds a single shared usb_request (dum->fifo_req) that the "emulated single-request FIFO" fast-path in dummy_queue() reuses for small IN transfers: it copies the caller's request into it (req->req = *_req) and queues it, treating list_empty(&fifo_req.queue) as "the slot is free".

The completion side (dummy_timer/transfer/nuke/dummy_dequeue) follows the standard pattern: list_del_init(&req->queue) unlinks the request, then the lock is dropped and usb_gadget_giveback_request() invokes req->complete(). But list_del_init() makes fifo_req.queue look empty *before* the completion callback returns, so a concurrent dummy_queue() on another CPU sees the slot as free, reuses fifo_req and runs req->req = *_req -- overwriting req->complete while dummy_timer is mid-calling it. The indirect call then jumps to a clobbered pointer, causing a general protection fault / page fault in dummy_timer (syzkaller extid faf3a6cf579fc65591ca). The clobbering write is an in-bounds memcpy on a live shared object, so KASAN cannot flag it.

Add a fifo_req_busy bit covering the shared request's whole lifetime: set it in dummy_queue() when the FIFO fast-path takes fifo_req (making it the fast-path guard, replacing the list_empty(&fifo_req.queue) test), and clear it after the completion callback has returned, via a dummy_giveback() helper used at all four gadget-request giveback sites. The shared slot can no longer be reused until its completion callback has finished.

AnalysisAI

Race condition in the Linux kernel's dummy_hcd USB gadget driver corrupts a shared kernel request object's function pointer mid-callback, enabling a local low-privilege attacker on a multi-CPU system to redirect kernel execution and achieve privilege escalation. The vulnerable component is the FIFO fast-path in dummy_queue(), which reuses a single shared fifo_req before its completion callback has returned, allowing a concurrent CPU to overwrite the req->complete pointer while dummy_timer is actively invoking it - causing a general protection fault or page fault in kernel context. A syzkaller reproducer is documented (extid faf3a6cf579fc65591ca), but no public exploit or CISA KEV listing exists; EPSS sits at 0.18%, indicating very low observed exploitation activity.

Technical ContextAI

The affected component is drivers/usb/gadget/udc/dummy_hcd.c in the Linux kernel, which implements a USB dual-role controller used for USB gadget emulation and testing. The driver's FIFO fast-path in dummy_queue() embeds a single shared usb_request object (dum->fifo_req) and uses list_empty(&fifo_req.queue) as a guard to detect whether the slot is free. The race arises because list_del_init(&req->queue) - called in the completion side (dummy_timer/transfer/nuke/dummy_dequeue) - makes the list appear empty before usb_gadget_giveback_request() invokes req->complete(), so a concurrent dummy_queue() on a second CPU immediately copies the caller's new request into fifo_req via req->req = *_req, clobbering the req->complete function pointer while dummy_timer is mid-call on it. The resulting indirect call jumps to a corrupted pointer, producing a general protection fault or page fault inside the kernel timer. Because the overwrite is an in-bounds memcpy on a live object (not a heap-freed region), KASAN cannot flag it. No CWE was officially assigned, but this fits CWE-362 (Concurrent Execution Using Shared Resource with Improper Synchronization) combined with function pointer corruption. CPE cpe:2.3:a:linux:linux:*:*:*:*:*:*:*:* covers all affected kernel releases from version 2.6.12 onward through the unpatched stable branches.

RemediationAI

The primary fix is to upgrade to a patched kernel version: 6.6.148+ for the 6.6.x LTS branch, 6.12.101+ for 6.12.x, 6.18.42+ for 6.18.x, 7.1.6+ for 7.1.x, or mainline 7.2-rc5 or later. Patch commits are available at https://git.kernel.org/stable/c/e2b2740f1242bc70b5b46da2cdbbaa419f490e59, https://git.kernel.org/stable/c/67b589d09a96882d56842dced5698ed8dd06ce45, https://git.kernel.org/stable/c/e239ea91b48180ed48a86ac25643832a02c88456, https://git.kernel.org/stable/c/e24b33618231034bf01dfaff4fd3409d4b4d5b2e, and https://git.kernel.org/stable/c/d5e5cd3654d2b5359a12ea6586120f05b28634ee. For systems where dummy_hcd is not operationally required, the most effective workaround is to blacklist the module by adding 'blacklist dummy_hcd' to /etc/modprobe.d/blacklist.conf and rebooting - this fully eliminates the attack surface with no impact on non-USB-emulation workloads. Systems actively using dummy_hcd for USB gadget testing should prioritize the kernel upgrade, as no alternative to the module-level fix exists for those deployments.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

EUVD-2026-55471 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy