ZeroHour

CVE-2026-90041

mass

Use-after-free in Linux kernel HID sony driver on controller probe failure

CVSS 3.1
8.8 high
EPSS
Published
()
Modified
AI analysis

CVE-2026-90041 is a use-after-free in the Linux kernel's HID 'sony' driver (drivers/hid/hid-sony.c) caused by incorrect cleanup when controller probing fails. When a Sony controller is connected, sony_input_configured() links its state into sony_device_list before the input device is registered; if input_register_device() then fails, sony_probe() frees the driver state (via devres) while the list node is still linked, leaving a dangling entry in the shared device list. A subsequent controller connection that traverses the list touches freed memory, which could be leveraged for memory corruption or a crash by an attacker with local/adjacent access — such as plugging in or pairing over USB/Bluetooth a crafted or malfunctioning Sony-class HID device — consistent with the CVSS 8.8 (high, adjacent network, C:H/I:H/A:H) score. Any Linux system whose kernel includes the sony HID driver is affected, though the advisory does not specify vulnerable or fixed version ranges. No public proof-of-concept and no known in-the-wild exploitation; the flaw was found by 0sec using automated source analysis.

What to do: Update to a kernel that includes the sony driver probe-failure cleanup patch as soon as your distribution ships it (mainline/stable backport; no fixed version number is given in the advisory). Until then, avoid attaching Sony DualShock-class controllers from untrusted sources to patched-pending systems, or blacklist the hid_sony module where Sony controllers are not needed (verify with 'lsmod | grep hid_sony').

Affected
Linux kernel (HID sony driver, drivers/hid/hid-sony.c)
Estimated exposure
massHundreds of millions of Linux installations ship distro kernels with hid_sony compiled/enabled (kernel ubiquity), though practical exposure is limited to hosts… — The HID sony driver is enabled as a module in mainstream distribution kernels running on hundreds of millions of desktop, laptop, and appliance systems, but the bug only manifests when a Sony HID controller is attached and input…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

In the Linux kernel, the following vulnerability has been resolved: HID: sony: clean up device list on probe failure sony_input_configured() adds some controllers to sony_device_list before HID core registers their input devices. input_register_device() can fail after the callback returns successfully. sony_probe() then observes that HID_CLAIMED_INPUT is clear and unwinds, but only stops the HID hardware. The devres-managed sony_sc is freed while its list node remains linked, so the next matching controller traverses freed memory. Initialize the list node and device ID to inactive states. Make list removal idempotent and run the driver-private cleanup on every probe failure path. This also makes a second cleanup safe when sony_input_configured() already unwound a partial initialization before sony_probe() handles the missing input claim. Found by 0sec (https://0sec.ai) using automated source analysis; verified against the HID input registration and probe unwind paths.

Vector
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

In the news

No ingested article mentions this CVE yet.