Números como "CVE-2021-44228" y "CVE-2017-5638" aparecen en toda noticia sobre una gran brecha. Aquí tienes qué significan y cómo un desarrollador independiente puede mantenerse al día de forma realista.
Cómo leer el número
Un identificador CVE tiene tres partes. El número en sí no lleva significado de gravedad (eso es algo aparte).
Por qué hace falta
Constantemente se encuentran vulnerabilidades. Sin un nombre compartido, "la vulnerabilidad a la que te refieres" y "la que arreglé" podrían no ser lo mismo. Un identificador común permite que las noticias, los parches, los escáneres y las bases de datos apunten exactamente a la misma vulnerabilidad. Ese es el punto de partida de cualquier arreglo.
Quién asigna los números
CVE lo gestiona el Programa CVE, que opera MITRE en EE. UU. con financiación de la CISA estadounidense. Los números en sí los asignan organizaciones autorizadas como CNA (CVE Numbering Authorities) de todo el mundo: fabricantes de software, organizaciones de investigación en seguridad, CERT nacionales y otras, varios cientos en total. En Japón, JPCERT/CC es una de ellas.
Un registro CVE tiene un estado. «Reserved» (reservado) significa que el número está apartado pero los detalles no se han hecho públicos; «Published» (publicado) significa que el contenido es público; «Rejected» (rechazado) significa que se retiró por duplicado o por error. Cuando un número aparece en las noticias sin detalles detrás, puede que siga reservado.
CVE vs NVD vs JVN
El mismo identificador CVE muestra información distinta según dónde lo consultes.
| Nombre | Lo gestiona | Qué contiene | Úsalo para |
|---|---|---|---|
| CVE (cve.org) | MITRE (con apoyo de la CISA) | el identificador, una descripción breve, referencias | el identificador oficial y el resumen |
| NVD | NIST (EE. UU.) | los datos del CVE más la puntuación CVSS y los productos afectados | la puntuación y qué productos se ven afectados |
| JVN | JPCERT/CC e IPA | vulnerabilidades de productos japoneses, explicaciones y correcciones en japonés | detalle en japonés, productos japoneses |
| KEV | CISA (EE. UU.) | CVE confirmados como explotados, con plazos de corrección | priorizar |
CVE vs CVSS vs KEV: qué te dice cada uno
Estos tres viajan juntos pero responden a preguntas distintas. Usas los tres para priorizar.
| Término | Responde | Ejemplo |
|---|---|---|
| CVE | Qué vulnerabilidad (el nombre) | CVE-2021-44228 (Log4Shell) |
| CVSS | Lo grave que es (0–10) | 10.0 (la peor clase) |
| KEV | ¿Se está explotando? | En la lista de explotadas → máxima prioridad |
Un CVSS alto no es automáticamente la máxima prioridad
La puntuación es un "valor teórico del peor caso". En la práctica, pondera KEV (si se está explotando ahora mismo) y si usas la función afectada. Un 10.0 que no usas tiene poco impacto; una puntuación media bajo explotación activa es la máxima prioridad.
De la asignación al arreglo
Un CVE no se publica en el instante en que se encuentra: pasa por una coordinación.
Descubrimiento e informe
Reservado
Publicado
Explotado (KEV)
Ejemplos: CVE que aparecen una y otra vez en las noticias
Estos son incidentes tratados en este sitio y sus identificadores CVE. No hace falta memorizar los números; lo importante es que, al buscar por el número, se reúne la información sobre la misma vulnerabilidad desde todas partes.
| Identificador CVE | Nombre común / producto | Incidente relacionado |
|---|---|---|
| CVE-2014-0160 | Heartbleed (OpenSSL) | Heartbleed: se filtró memoria del servidor |
| CVE-2017-5638 | Apache Struts | Equifax: sin parchear, quedaron expuestos los datos de 147 millones de personas |
| CVE-2018-13379 | Dispositivo VPN | Hospital de Handa (en inglés): señalado como punto de entrada del ransomware |
| CVE-2021-44228 | Log4Shell (Log4j) | Log4Shell: en uso a través de dependencias indirectas que nadie había notado |
| CVE-2023-34362 | MOVEit Transfer | MOVEit: el daño se extendió a más de 2700 organizaciones |
| CVE-2024-3094 | XZ Utils | XZ Utils: una puerta trasera colocada en los archivos de la versión publicada |
Una vez publicado un número, los atacantes leen la misma información. En los incidentes de Equifax y del Hospital de Handa pasó tiempo entre la publicación de la corrección y la intrusión. El tiempo hasta que aplicas la corrección es el tiempo durante el que pueden atacarte.
Una forma realista de mantenerse al día
Seguir cada CVE a mano es imposible, y el fallo se convierte en el incidente. → Un CVSS 10.0 público desatendido durante meses
Así que deja que vigilen las máquinas.
Errores comunes
- Leer las noticias y juzgar "probablemente esté bien" a mano
- Medir el riesgo solo a partir del texto de
package.json - "Actualizar algún día", sin fecha límite
Deja que vigilen las máquinas
- Dependabot (GitHub): PRs automáticas para los CVE que coinciden con tus dependencias
- osv-scanner (Google): revisa tu lockfile en CI, en un solo paso
- Juzga por la versión que realmente se ejecuta (no por el mínimo declarado)
La clave es juzgar por la versión que realmente se ejecuta: el mínimo de package.json puede no coincidir con lo que realmente se ejecuta (esta mala interpretación también alimentó un incidente de RCE).
Cómo comprobar tu propia configuración
Consulta de qué trata un identificador CVE
Introduce un número que hayas visto en las noticias en CVE / KEV Lookup para ver en un solo lugar su puntuación CVSS, su probabilidad de explotación (EPSS) y si está en KEV.
Lista los CVE que afectan a tus dependencias
Carga tu lockfile (package-lock.json, pnpm-lock.yaml, etc.) en el Escáner de vulnerabilidades de dependencias para obtener una lista de los CVE y GHSA que coinciden. En proyectos npm, npm audit hace lo mismo.
Cruza servidores y dispositivos por producto y versión
Para productos que quedan fuera de tu gestor de paquetes, como servidores y dispositivos VPN, revisa los avisos del fabricante para ver si la versión que usas está afectada. Si lo está, fija una fecha límite para actualizar (→ cómo gestionar un CVE en la práctica).
Fuentes (primarias)
- CVE Program, «Process» — cve.org (asignación por las CNA y estados de los registros CVE; en inglés)
- NIST, «National Vulnerability Database» — nvd.nist.gov (en inglés)
- JPCERT/CC e IPA, «JVN (Japan Vulnerability Notes)» — jvn.jp (en inglés y japonés)
- CISA, «Known Exploited Vulnerabilities Catalog» — cisa.gov (en inglés)
Sigue leyendo
- Glosario: Qué es CVSS (la rúbrica de gravedad) · Qué es RCE
- Defensa: Crea una rutina de seguimiento de CVE
- En la práctica: decidir qué parchear primero (fijar prioridad y plazos)