CVE-2026-107225
Excelize es una biblioteca en lenguaje Go para leer y escribir hojas de cálculo de Microsoft Excel. Desde la 2.8.0 hasta la 2.11.0, los predicados de extracción de relleno, borde y fuente de GetStyle solo comprueban los límites superiores de los índices de la tabla de estilos controlados por el atacante. File.GetStyle se basa en predicados extractStyleCondFuncs que permiten que valores negativos de FillID, BorderID y FontID lleguen a la indexación de slices.
Leer descripción completaMostrar menos
Cuando un styles.xml manipulado proporciona un fillId, borderId o fontId negativo y la aplicación lee el estilo, un identificador negativo supera el predicado que solo comprueba el límite superior y se convierte en un índice de slice negativo, lo que permite a un atacante provocar un panic al leer el estilo de las celdas. No hay ninguna versión corregida disponible en el momento de esta revisión.
Traducción automática del texto original de NVD (en inglés).
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
- Puntuación base: 6.5
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.25%
- Percentil entre todas las CVEs puntuadas: 16
- Fecha de la puntuación: 17/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
T1203Exploitation for Client Executionexecution85 % - Impacto principal
T1499.004Application or System Exploitationimpact80 %
UI:R + ataque a través de archivo Excel: ejecución en cliente al abrir. Panic/crash = DoS de aplicación (T1499.004).
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)
CWE
- CWE-20, CWE-129
Referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-107225",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-107225",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2026-10-10T02:41:58.921948Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 6.5,
"attackVector": "NETWORK",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"integrityImpact": "NONE",
"userInteraction": "REQUIRED",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "NONE",
"confidentialityImpact": "NONE"
},
"impactScore": 3.6,
"exploitabilityScore": 2.8
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "qax-os",
"product": "excelize",
"versions": [
{
"status": "affected",
"version": ">= 2.8.0, <= 2.11.0"
}
]
}
]
}
],
"published": "2026-10-07T19:17:35.333",
"references": [
{
"url": "https://github.com/qax-os/excelize/commit/ae2113b410e51f6a141c396a59eda8c42b91bc22",
"tags": [
"Patch"
],
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/qax-os/excelize/pull/2367",
"tags": [
"Issue Tracking",
"Patch"
],
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/qax-os/excelize/security/advisories/GHSA-5h23-36rv-pm65",
"tags": [
"Exploit",
"Vendor Advisory"
],
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/qax-os/excelize/security/advisories/GHSA-5h23-36rv-pm65",
"tags": [
"Exploit",
"Vendor Advisory"
],
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
}
],
"vulnStatus": "Analyzed",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-20"
},
{
"lang": "en",
"value": "CWE-129"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Excelize is a Go language library for reading and writing Microsoft Excel spreadsheets. From 2.8.0 to 2.11.0, GetStyle's fill, border, and font extraction predicates check only upper bounds for attacker-controlled style-table indices. File.GetStyle relies on extractStyleCondFuncs predicates that allow negative FillID, BorderID, and FontID values to reach slice indexing. When a crafted styles.xml supplies a negative fillId, borderId, or fontId and the application reads the style, a negative identifier passes the upper-bound-only predicate and becomes a negative slice index, allowing an attacker to panic while reading cell styling. No fixed version is available as of this review."
}
],
"lastModified": "2026-10-13T13:08:51.830",
"configurations": [
{
"nodes": [
{
"negate": false,
"cpeMatch": [
{
"criteria": "cpe:2.3:a:excelize:excelize:*:*:*:*:*:go:*:*",
"vulnerable": true,
"matchCriteriaId": "4FABD6F5-28D2-4CF0-9609-156698F346C1",
"versionEndIncluding": "2.11.0",
"versionStartIncluding": "2.8.0"
}
],
"operator": "OR"
}
]
}
],
"sourceIdentifier": "security-advisories@github.com"
}