CVE-2026-89470
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.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Puntuación base: 8.4
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.14%
- Percentil entre todas las CVEs puntuadas: 3
- Fecha de la puntuación: 5/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
🎯 Técnicas ATT&CK
Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.
- Explotación
T1068Exploitation for Privilege Escalationprivilege escalation95 % - Impacto principal
T1565.001Stored Data Manipulationimpact85 %
Acceso local sin interacción en Linux kernel (AV:L/PR:N/UI:N). Controlador embebido malicioso causa escritura fuera de límites y corrupción de memoria, impactando integridad de datos.
Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.
🛡️ Mitigaciones ATT&CK que cubren estas técnicas
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
Referencias
- https://git.kernel.org/stable/c/304a29ac55ba3ee6eceaf7d83d09cd9709f3bf60
- https://git.kernel.org/stable/c/3262977a05b23d1be9fc86727a2b490ec997543e
- https://git.kernel.org/stable/c/3ce9218639ff62d011eb8aca0943aa670a654c7b
- https://git.kernel.org/stable/c/4b1f2be1e1b74a50386ba718de3d62bfcf5ee701
- https://git.kernel.org/stable/c/657cd3a42e937276262c0a8ae6b01a87004309de
- https://git.kernel.org/stable/c/dce1750ddbd3380b1f6090dda2b07d2ebea2261d
- https://git.kernel.org/stable/c/e951b65ef1699439079b723ca5c72cbe44771647
- https://git.kernel.org/stable/c/fd5f289cca04ad869b34fc9ccb647670bfdb60ac
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-89470",
"cveTags": [],
"metrics": {
"cvssMetricV31": [
{
"type": "Secondary",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 8.4,
"attackVector": "LOCAL",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "NONE",
"confidentialityImpact": "HIGH"
},
"impactScore": 5.9,
"exploitabilityScore": 2.5
}
]
},
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "e951b65ef1699439079b723ca5c72cbe44771647",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "3ce9218639ff62d011eb8aca0943aa670a654c7b",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "dce1750ddbd3380b1f6090dda2b07d2ebea2261d",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "3262977a05b23d1be9fc86727a2b490ec997543e",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "fd5f289cca04ad869b34fc9ccb647670bfdb60ac",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "4b1f2be1e1b74a50386ba718de3d62bfcf5ee701",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "304a29ac55ba3ee6eceaf7d83d09cd9709f3bf60",
"versionType": "git"
},
{
"status": "affected",
"version": "3af15cfacd1eef7f223802d49a88cae23c509183",
"lessThan": "657cd3a42e937276262c0a8ae6b01a87004309de",
"versionType": "git"
}
],
"programFiles": [
"drivers/power/supply/cros_usbpd-charger.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4.20"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "4.20",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.10.270",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.221",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.188",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.157",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.109",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.50",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.2.4",
"versionType": "semver",
"lessThanOrEqual": "7.2.*"
},
{
"status": "unaffected",
"version": "7.3-rc1",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"drivers/power/supply/cros_usbpd-charger.c"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2026-09-11T20:19:28.140",
"references": [
{
"url": "https://git.kernel.org/stable/c/304a29ac55ba3ee6eceaf7d83d09cd9709f3bf60",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/3262977a05b23d1be9fc86727a2b490ec997543e",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/3ce9218639ff62d011eb8aca0943aa670a654c7b",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/4b1f2be1e1b74a50386ba718de3d62bfcf5ee701",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/657cd3a42e937276262c0a8ae6b01a87004309de",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/dce1750ddbd3380b1f6090dda2b07d2ebea2261d",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e951b65ef1699439079b723ca5c72cbe44771647",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/fd5f289cca04ad869b34fc9ccb647670bfdb60ac",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Received",
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\npower: supply: cros_usbpd: Limit port counts to EC_USB_PD_MAX_PORTS\n\nCurrently the cros_usbpd-charger driver probe iterates based on raw\ncharger port count returned by the embedded controller. The only check\nis against the number of USB PD ports which the embedded controller\nalso defines. A malicious embedded controller could return an inaccurate\nport count (up to 255) resulting in an out of bounds write and\nsubsequent memory corruption.\n\nUpdate helper functions in cros_usbpd-charger to limit port counts to\nEC_USB_PD_MAX_PORTS."
}
],
"lastModified": "2026-09-14T13:19:03.310",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}