ZeroHour

CVE-2026-80954

niche

Unlocked dev->desc dereference in Linux kernel i3c subsystem enables local kernel race

CVSS 3.1
7.8 high
EPSS
Published
()
Modified
AI analysis

The Linux kernel's i3c subsystem contains a race condition in i3c_device_get_supported_xfer_mode(), which dereferences dev->desc without holding the required bus->lock. Because dev->desc can be freed or altered concurrently (for example during device hot-removal or re-enumeration on the I3C bus), a local attacker with low privileges who can trigger this code path while the descriptor changes could cause a use-after-free or invalid dereference, resulting in kernel memory corruption with high impact to confidentiality, integrity, and availability (CVSS 7.8). The upstream fix removes the unlocked dereference by using dev->bus, which is valid for the device's lifetime. Only systems whose kernels include the I3C subsystem and whose drivers actually call this API (primarily embedded devices using the MIPI I3C bus) are exposed to the vulnerable path. No public proof of concept is known and the flaw is not listed in CISA's KEV catalog.

What to do: Update to a kernel release containing the fix, which replaces the unlocked dev->desc dereference with a read of dev->bus. If immediate patching is not possible, determine actual exposure by checking whether your kernel enables the I3C subsystem (CONFIG_I3C) and whether any loaded drivers call i3c_device_get_supported_xfer_mode() — systems without I3C hardware or such drivers are not practically reachable. Additionally, restrict local untrusted shell/device access and monitor kernel logs for oopses or crashes originating in i3c code paths.

Affected
Linux kernelAll kernel versions containing the vulnerable i3c_device_get_supported_xfer_mode() implementation prior to the upstream fix commit (the advisory does not specif
Estimated exposure
nicheunknown; plausibly a small subset of embedded Linux devices with I3C hardware — The vulnerable code path requires a kernel built with the I3C subsystem and a driver invoking i3c_device_get_supported_xfer_mode(), a configuration typical of embedded/IoT boards rather than servers, desktops, or phones, and no public scan…

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: i3c: Fix unlocked dereference of dev->desc in i3c_device_get_supported_xfer_mode() i3c_device_get_supported_xfer_mode() uses dev->desc to obtain the master controller. However, dev->desc must not be dereferenced unless bus->lock is held, and this function does not take that lock. The function only needs access to the master controller associated with the device's bus. Use dev->bus instead, which is always valid for the lifetime of the device and does not require dereferencing dev->desc.

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

In the news

No ingested article mentions this CVE yet.