Skip to main content

Linux Kernel EUVDEUVD-2026-48887

| CVE-2026-64343 HIGH
Use After Free (CWE-416)
2026-07-25 Linux GHSA-fmwh-mr5j-p6wq
7.8
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
7.0 HIGH

Race condition between disconnect() and release() requires precise timing, warranting AC:H; all other metrics align with vendor vector.

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

Primary rating from NVD.

CVSS VectorNVD

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
Sep 03, 2026 - 16:10 vuln.today
CVSS changed
Sep 03, 2026 - 16:07 NVD
7.8 (HIGH)
Patch available
Jul 25, 2026 - 11:18 EUVD
CVE Published
Jul 25, 2026 - 08:50 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 25, 2026 - 08:50 nvd
HIGH 7.8

DescriptionNVD

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

USB: ldusb: fix use-after-free on disconnect race

mutex_unlock() may access the mutex structure after releasing the lock and therefore cannot be used to manage lifetime of objects directly (unlike spinlocks and refcounts). [1][2]

Use a kref to release the driver data to avoid use-after-free in mutex_unlock() when release() races with disconnect().

[1] a51749ab34d9 ("locking/mutex: Document that mutex_unlock() is non-atomic") [2] 2b9d9e0a9ba0 ("locking/mutex: Clarify that mutex_unlock(), and most other sleeping locks, can still use the lock object after it's unlocked")

AnalysisAI

Use-after-free in the Linux kernel's USB ldusb driver allows a local unprivileged user to corrupt kernel memory by racing disconnect() against release() on a connected USB device. The root cause is that mutex_unlock() is documented as non-atomic and may access the mutex object after it logically releases the lock, creating a window where the driver data structure can be freed while still in use. No public exploit has been identified at time of analysis, and EPSS is low (0.22%), but the C:H/I:H/A:H CVSS impact vector reflects the potential for full kernel privilege escalation if successfully triggered.

Technical ContextAI

The ldusb driver (drivers/usb/misc/ldusb.c) manages USB HID devices sold by vendors like Delcom Products. It maintains per-device driver data that is shared between the file-operation release() path (triggered when a userspace process closes the device file) and the USB disconnect() callback (triggered by device unplug). The bug arises because the mutex protecting this shared state was relied upon to synchronize object lifetime, but mutex_unlock() is explicitly documented as non-atomic - the kernel may still access the mutex structure after the lock is released, meaning the unlock itself can touch freed memory if another thread frees the object concurrently. CWE-416 (Use After Free) applies precisely: the memory region backing the driver data can be recycled by the kernel allocator while mutex_unlock() is still executing on the disconnect side. The fix replaces direct free with a kref (kernel reference counter), ensuring the object is only freed when the last reference is dropped, eliminating the race window.

RemediationAI

Update to a patched stable kernel: 5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.96, 6.18.39, or 7.1.4 depending on the deployed branch. Upstream stable patches are available at the git.kernel.org references provided (fc55923a, e5a9bdce, af59829e, 02ca08ff, d8f69404, 2107a4fc, a3e79413, 19bdfc7b). If immediate patching is not possible, compensating controls include: blacklisting the ldusb kernel module via /etc/modprobe.d/ (trade-off: Delcom and similar USB HID devices will stop functioning), or restricting udev/device node permissions to trusted users only so unprivileged local accounts cannot open the ldusb device file. Neither workaround addresses the underlying race but they reduce the attack surface by limiting who can trigger the release() path.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
Container suse/sl-micro/6.0/base-os-container:2.1.3-7.208 Container suse/sl-micro/6.1/base-os-container:2.2.1-5.184 Affected
Container suse/sl-micro/6.0/kvm-os-container:2.1.3-6.218 Container suse/sl-micro/6.1/kvm-os-container:2.2.1-5.186 Affected
Container suse/sl-micro/6.0/rt-os-container:2.1.3-7.237 Container suse/sl-micro/6.1/rt-os-container:2.2.1-5.180 Affected
SUSE Linux Enterprise Real Time 15 SP7 SUSE Real Time Module 15 SP7 Fixed
SUSE Linux Micro 6.0 Fixed

Share

EUVD-2026-48887 vulnerability details – vuln.today

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