CVE-2026-80952

i3c: master: Fix info leak and UAF in device unregister path

State
Published
Severity
7.8 High
Published
Sep 11, 2026
Updated
Oct 19, 2026
Reserved
Aug 26, 2026

Read the record on cve.org

Description

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

i3c: master: Fix info leak and UAF in device unregister path

i3c_master_unregister_i3c_devs() clears i3cdev->dev->desc before calling device_unregister(). During device_unregister(), device_del() emits a KOBJ_REMOVE uevent and unbinds the driver while the device descriptor is still expected to be valid. As a result, i3c_device_uevent() and a racing modalias_show() can observe a NULL desc and fall back to an uninitialized stack struct i3c_device_info, leaking kernel stack contents in the generated modalias. Driver .remove() callbacks may also encounter an unexpected NULL desc during unbind.

Keep desc valid until device_unregister() has completed. Since device_unregister() drops the device reference and may free the device, take an extra reference with get_device() before unregistering. Clear desc afterwards and release the extra reference with put_device(). This preserves the release-time invariant that desc must be NULL while avoiding both the information leak and a potential use-after-free from writing desc after the device has been released.

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before 334cfb5e285cece5dc49fb3fb8ea9b70b2cb5d7eAffected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before 109995153898454c7795c2c299fd0a0b57456a4bAffected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before c64daaaba08e490c8347ff60aacac4dd51249f91Affected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before ef72ff6650c4ebf2b444708d84df66db42f262d9Affected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before c16b6f25e0cc2dd1055dde1256cbf5a9e888cf49Affected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before 94fb9786d67a8f8b899e77381620f86bad94fdf7Affected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before 4837be0f9ac2efe5e83b35a696b6242c473d280cAffected
  • 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 to before d2c743efd2d1ee64e94324664808f623dd865872Affected
LinuxLinux
  • 5.0Affected
  • before 5.0Not affected
  • 5.10.270 through 5.10.*Not affected
  • 5.15.221 through 5.15.*Not affected
  • 6.1.188 through 6.1.*Not affected
  • 6.6.157 through 6.6.*Not affected
  • 6.12.109 through 6.12.*Not affected
  • 6.18.50 through 6.18.*Not affected
  • 7.2.4 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.