¿Qué es CVE (Common Vulnerabilities and Exposures)?

Un CVE, o “Common Vulnerabilities and Exposures,” es una identificación única y estandarizada para una vulnerabilidad o exposición de seguridad en software o hardware. Los CVE son un sistema de nomenclatura y seguimiento que se utiliza en todo el mundo para identificar y enumerar vulnerabilidades de seguridad específicas. Este sistema fue creado para facilitar la organización, comunicación y referencia de información sobre vulnerabilidades, lo que permite a la comunidad de seguridad informática y a los profesionales de TI abordar y solucionar problemas de seguridad de manera más eficiente.

¿Cómo opera el sistema de CVE?

La supervisión de los Identificadores de Vulnerabilidad y Exposición Común (CVE) recae en la Corporación MITRE, con el respaldo financiero de la Agencia de Ciberseguridad y Seguridad de la Infraestructura (CISA), una entidad perteneciente al Departamento de Seguridad Nacional de los Estados Unidos.

Las entradas de CVE son concisas y no contienen detalles técnicos ni información sobre riesgos, impacto o soluciones. Dicha información se encuentra en otras bases de datos, como la Base de Datos Nacional de Vulnerabilidades (NVD) de los Estados Unidos, la Base de Datos de Notas de Vulnerabilidad CERT/CC y diversas listas mantenidas por proveedores y otras compañías.

Estos números de identificación de CVE desempeñan un papel fundamental al permitir a los usuarios identificar de manera fiable puntos de vulnerabilidad únicos y facilitar la coordinación en el desarrollo de soluciones y herramientas de seguridad para diversos sistemas. La Corporación MITRE es responsable de mantener la lista de CVE, aunque son frecuentemente las empresas y los miembros de la comunidad de código abierto quienes reportan los fallos de seguridad que se convierten en CVE.

Los identificadores de CVE

Los identificadores de CVE son asignados por las Autoridades de Numeración de CVE (CNA). Actualmente, hay 327 CNAs (325 CNAs y 2 CNA-LRs) de 37 países participando en el Programa CVE que representan a los principales proveedores de tecnología de la información, además de empresas de seguridad e instituciones de investigación. En este sentido, Pandora FMS está en contacto con investigadores de seguridad quienes informan a la empresa sobre vulnerabilidades que han detectado, proporcionando detalles como fecha y hora en que identificó el fallo de seguridad, versiones afectadas, tipo de seguridad a informar (XSS, CSRF, SQLi, RCE), componentes afectados (API, agente, servidor, entre otros), captura de pantallas o registros de transacciones e instrucciones para reproducir el problema, siguiendo sus políticas de revelación y gestión de vulnerabilidades. Cabe mencionar que solicitamos al investigador que no publique los detalles de la vulnerabilidad, debiendo primero analizar el problema, reproducir el fallo y determinar la priorización para su corrección. Una vez que se corrige la problemática, junto con el Investigador se gestiona la respuesta a la comunidad y se publica la corrección realizada en una versión oficial de CVE, indicando el Código CVE, los detalles de la vulnerabilidad, fecha de certificación y versión que se ha corregido.

Es importante considerar que los informes de CVE no solo provienen de investigadores, sino que también pueden provenir de cualquier persona que descubra una vulnerabilidad y la reporte, ya sea un proveedor o simplemente un usuario astuto. De hecho, muchos proveedores ofrecen recompensas por descubrir fallos de seguridad para fomentar su divulgación responsable. Si se encuentra una vulnerabilidad en sistemas de software de código abierto, es importante notificarlo a la comunidad.

MITRE también tiene la capacidad de emitir identificadores de CVE directamente. Las CNA reciben bloques de identificadores de CVE y los reservan para utilizarlos en nuevos problemas que se descubren. Cada año se emiten miles de números de identificación de CVE. Incluso un solo producto complejo, como un sistema operativo, puede acumular cientos de identificadores de CVE.

La información sobre la vulnerabilidad llegará a la CNA de una u otra forma. La CNA asigna un número de identificación de CVE a la información, crea una breve descripción y proporciona referencias. Posteriormente, los nuevos identificadores de CVE se publican en el sitio web correspondiente.

En muchas ocasiones, se asigna un identificador de CVE antes de que se publique una advertencia de seguridad, ya que los proveedores suelen mantener en secreto las vulnerabilidades de seguridad hasta que se desarrolle y pruebe una solución. Esto se hace para reducir las oportunidades de aquellos que buscan explotar las vulnerabilidades sin correcciones.

Una vez que se publica una entrada de CVE, se incluye el número de identificación (en formato “CVE-2023-1234567”), una breve descripción de la exposición o la vulnerabilidad, y referencias que pueden contener enlaces a recomendaciones e informes relacionados con la vulnerabilidad.

Características de los CVE

Es importante comprender que una vulnerabilidad es una debilidad que el cibercrimen puede aprovechar para obtener acceso no autorizado o realizar acciones no autorizadas los sistemas informáticos, tales como ejecutar códigos, acceder a la memoria de un sistema, instalar malware y robar datos confidenciales. La Exposición es un error hallado en un software o hardware que permite al cibercrimen emprender acciones como acceder a un sistema o red, hallar la oportunidad para violar o filtrar datos y obtener información de identidad personal para luego venderla. Exposiciones accidentales han dado lugar a las mayores filtraciones de datos y no tanto por ataques sofisticados.

Los números de identificación de CVE se asignan a las vulnerabilidades que cumplen con este conjunto específico de criterios:

  • Solución independiente: La vulnerabilidad puede resolverse de manera autónoma, sin depender de otras correcciones.
  • Confirmación o documentación por parte del proveedor: El proveedor de software o hardware reconoce la existencia de la vulnerabilidad y su impacto negativo en la seguridad. Alternativamente, la persona que informó sobre la vulnerabilidad proporciona un informe que demuestra su impacto negativo y su violación de la política de seguridad del sistema afectado.
  • Afectación de una base de código: Las vulnerabilidades que afectan a más de un producto reciben identificadores de CVE separados. En casos que involucran bibliotecas, protocolos o estándares compartidos, se asigna un único CVE si no es posible utilizar el código compartido sin exponerse a la vulnerabilidad. De lo contrario, se asigna un CVE distinto a cada producto.

Ventajas de los CVE

Los CVE tienen un rol importante en la constante Monitorización de la Seguridad para auditar y asegurar los sistemas, creando un ambiente de Confianza Digital, con base en:

  • La identificación y la concientización: los CVE se convierten en un lenguaje común para los profesionales de seguridad para identificar y comunicar vulnerabilidades rápidamente.
  • Priorización: los CVE permiten a los estrategas de la seguridad priorizar qué vulnerabilidades abordar con base en su gravedad e impacto potencial.
  • Gestión de parches: las referencias de CVE ayudan a localizar y aplicar parches o realizar actualizaciones para corregir vulnerabilidades.
  • Mitigación de riesgos: al abordar los CVE conocidos, las organizaciones pueden reducir su superficie de ataque y minimizar el riesgo de incidentes de seguridad.

También, algo muy importante es la colaboración. El sistema CVE fomenta el conocimiento y la colaboración entre investigadores, proveedores y organizaciones de seguridad, que puede conducir a una resolución de vulnerabilidades o exposiciones de manera más rápida.

Consideraciones sobre los CVE

Como se ha explicado anteriormente, los CVE parten de la información sobre vulnerabilidades y exposiciones proporcionada por distintos actores, por lo que su identificación es un “ente vivo” en constante cambio y evolución, que merece mencionarse algunas consideraciones importantes:

  • Dificultad para interpretar y monitorear la lista de CVE: sin las herramientas adecuadas, es difícil saber qué vulnerabilidades afectan a la organización sin herramientas adicionales.
  • Conflicto de intereses: según la sección 7 de las Reglas de la CNA, un proveedor que recibe un informe sobre una vulnerabilidad o exposición de seguridad tiene la total discreción al respecto, lo que puede generar un conflicto de intereses. Hay oportunidad para que un proveedor puede intentar dejar fallas sin reparar, negando una asignación CVE, una decisión que Mitre no puede revertir.
  • Tiempo en que los CVE están fuera del radar: el acelerado crecimiento de vulnerabilidades y exposiciones ha provocado un retraso en las asignaciones de CVE, lo que puede retrasar su disponibilidad en la lista identificadores. También existen vulnerabilidades no informadas que permanecen ocultas del radar de asesores de seguridad o rastreadores de problemas.
  • Información incompleta: no todas las vulnerabilidades y exposiciones reciben CVE; muchas se divulgan de forma privada y pueden ser parchadas sin una asignación pública de CVE.
  • Complejidad: el sistema CVE se centra en identificar y rastrear vulnerabilidades y exposiciones, pero es posible que no capture el contexto completo de un ataque, lo cual impacta en la definición de resoluciones.

En un análisis del Marco MITRE, es alarmante es que sólo 86% de todas las vulnerabilidades de código abierto se incluyen en la lista CVE de MITRE y casi 30% de las vulnerabilidades de código abierto de JavaScript no se hallan en la base de datos CVE.

Al hablar de CVE, también debemos hablar de CWE (Common Weakness Enumeration o enumeración de debilidades comunes), que es una iniciativa impulsada por la comunidad CVE y mantenida también por Mitre Corporation para proporcionar una lista estandarizada y completa de debilidades, vulnerabilidades y errores de codificación comunes del software, como un recurso para los profesionales de la ciberseguridad y desarrolladores de software. Ejemplos de vulnerabilidades en Software son:

  • Errores de codificación durante el proceso de desarrollo de software. Ejemplos: desbordamientos del búfer, errores de validación de entradas y manejo inadecuado de errores.
  • Defectos de diseño, tales como fallas en la arquitectura o diseño de un sistema de software. Ejemplos: mecanismos de autenticación inseguros o controles de acceso inadecuados.
  • Vulnerabilidades introducidas a través de bibliotecas o componentes de terceros en los que se basa una aplicación de software.
  • Configuraciones incorrectas de software o sistemas que pueden ocasionar la exposición en Internet de datos o servicios confidenciales.

Por último, hay que tener en mente que pueden existir vulnerabilidades desconocidas que el cibercrimen puede explotar antes de que exista una solución o un parche disponible.

Conclusión

Como puede verse, los CVE son un componente fundamental en la ciberseguridad para identificar, priorizar y mitigar las vulnerabilidades y exposiciones como parte de una estrategia efectiva e integral. Las organizaciones deben mantenerse informadas sobre los CVE para abordar los riesgos y amenazas en forma proactiva, eficaz y lo más inmediata, apoyándose en las mejores herramientas y plataformas de monitoreo de la seguridad.

Recuerde que, en un mundo más conectado, es esencial mejorar la postura de seguridad, reducir riesgos y proteger los datos y los activos digitales, aprovechando los esfuerzos colaborativos y complementarios de una comunidad mundial de ciberseguridad, con el ánimo de no solo prevenir violaciones a la seguridad sino también pérdidas financieras por costos asociados con sanciones legales y la resolución de vulnerabilidades, el incumplimiento regulatorio y el daño reputacional.

Habla con el equipo de ventas, pide presupuesto, o resuelve tus dudas sobre nuestras licencias