CVE-2026-90025
massOut-of-Bounds Array Index in Linux Kernel UCSI DisplayPort Driver
The Linux kernel's USB Type-C UCSI DisplayPort altmode driver uses the GET_CURRENT_CAM response from the platform policy manager (typically the USB-C firmware on a laptop or dock) to index the connector's port altmode array, checking only that the value is not 0xff. If the PPM returns an invalid value greater than UCSI_MAX_ALTMODES, the driver performs an out-of-bounds array access that can crash the kernel and may expose kernel memory. Per the CVSS vector (AV:L, no privileges required), a local attacker who can induce such a response, e.g., through a malicious or buggy USB-C device, gains denial of service and potentially information disclosure. Affected systems are Linux machines running kernels with the UCSI DisplayPort altmode driver enabled, which is standard on USB-C-capable laptops and desktops in mainstream distributions. No public proof-of-concept, CISA KEV listing, or known in-the-wild exploitation exists.
What to do: Update to a Linux kernel that includes the upstream fix validating that the GET_CURRENT_CAM value is below UCSI_MAX_ALTMODES, and track your distribution's kernel errata since exact fixed version numbers are not provided in the data. Until patched, be cautious with untrusted USB-C docks and monitors, and consider unloading or blacklisting the ucsi DisplayPort altmode module on systems that do not need DisplayPort over USB-C. Because the attack vector is local, internet-exposed servers without local users face minimal risk.
| Linux kernel (usb: typec: ucsi DisplayPort altmode driver) | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
In the Linux kernel, the following vulnerability has been resolved: usb: typec: ucsi: displayport: Fix OOB altmode array index The UCSI displayport driver indexes the connector's port altmode array with the GET_CURRENT_CAM response after checking it is not 0xff. The port altmode array is UCSI_MAX_ALTMODES elements long. If the PPM returns an invalid GET_CURRENT_CAM response above UCSI_MAX_ALTMODES and not equal to 0xff, the kernel may crash with an array index OOB error. Update the UCSI displayport driver to verify the current cam is less than UCSI_MAX_ALTMODES before accessing the port altmode array.
- Vector
- CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
In the news0 stories
No ingested article mentions this CVE yet.