Impact
USB‑PD charger driver fails to enforce a hard limit on the number of USB ports. The driver iterates using the raw port count supplied by the embedded controller, allowing a malicious controller to provide a value up to 255. This causes an out‑of‑bounds write that corrupts memory, resulting in kernel memory corruption and potential system crash or (CWE‑787) that permits memory corruption.
Affected Systems
Impact is confined to Linux kernel distributions running the cros_usbpd charger driver. Systems employing the embedded controller firmware that can report a false port count are susceptible. The vulnerability was addressed by limiting the port count to EC_USB_PD_MAX_PORTS in the kernel source. Resources list only Linux:Linux; specific kernel versions are not provided in the data.
Risk and Exploitability
The vulnerability carries a CVSS score of 5.4, indicating a moderate risk level. The EPSS score is less than 1%, and the vulnerability is not listed in the CISA KEV catalog. Based on the description, the likely attack vector is a compromised or malicious embedded controller that can manipulate the reported port count. An out‑of‑bounds write in kernel space can lead to memory corruption and potentially cause a system crash or instability.
OpenCVE Enrichment