Skip to main content
← All vulnerabilities
CVE-2026-89470

power: supply: cros_usbpd: Limit port counts to EC_USB_PD_MAX_PORTS

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.109, and 2 more
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: power: supply: cros_usbpd: Limit port counts to EC_USB_PD_MAX_PORTS Currently the cros_usbpd-charger driver probe iterates based on raw charger port count returned by the embedded controller. The only check is against the number of USB PD ports which the embedded controller also defines. A malicious embedded controller could return an inaccurate port count (up to 255) resulting in an out of bounds write and subsequent memory corruption. Update helper functions in cros_usbpd-charger to limit port counts to EC_USB_PD_MAX_PORTS.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in e951b65ef1699439079b723ca5c72cbe44771647; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in 3ce9218639ff62d011eb8aca0943aa670a654c7b; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in dce1750ddbd3380b1f6090dda2b07d2ebea2261d; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in 3262977a05b23d1be9fc86727a2b490ec997543e; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in fd5f289cca04ad869b34fc9ccb647670bfdb60ac; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in 4b1f2be1e1b74a50386ba718de3d62bfcf5ee701; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in 304a29ac55ba3ee6eceaf7d83d09cd9709f3bf60; From 3af15cfacd1eef7f223802d49a88cae23c509183 · fixed in 657cd3a42e937276262c0a8ae6b01a87004309de

  • Linux Linux

    4.20

  • KernelLinux

    From 4.20.0 · fixed in 5.10.270; From 5.11.0 · fixed in 5.15.221; From 5.16.0 · fixed in 6.1.188; From 6.2.0 · fixed in 6.6.157; From 6.7.0 · fixed in 6.12.109; From 6.13.0 · fixed in 6.18.50; From 6.19.0 · fixed in 7.2.4

References 8

git.kernel.org