Skip to main content

Enterprise Server 3.20 actualmente está disponible como versión candidata para lanzamiento.

Acerca de GitHub Advisory Database

GitHub Advisory Database contiene una lista de las vulnerabilidades de seguridad y malware que se conocen, agrupados en tres categorías: avisos revisados por GitHub, avisos sin revisar y avisos de malware.

Acerca de GitHub Advisory Database

Agregamos asesorías a la GitHub Advisory Database desde los siguientes orígenes:

Si conoce otra base de datos de la que deberíamos importar avisos, háganoslo saber si abre un problema en https://github.com/github/advisory-database.

Los avisos de seguridad se publican como archivos JSON en el formato de vulnerabilidad de código abierto (OSV). Para obtener más información sobre el formato OSV, consulte Formato de vulnerabilidad de código abierto.

Tipos de avisos de seguridad

Cada aviso en GitHub Advisory Database se refiere a una vulnerabilidad en proyectos de código abierto o a software de código abierto malintencionado.

Una vulnerabilidad es un problema en el código de un proyecto que se puede aprovechar para dañar la confidencialidad, la integridad o la disponibilidad del proyecto o de otros proyectos que usan su código. Las vulnerabilidades varían en tipo, severidad y método de ataque. Por lo general, las vulnerabilidades en el código se introducen por accidente y se corrigen poco después de su detección. Debes actualizar el código para usar la versión corregida de la dependencia en cuanto esté disponible.

Por el contrario, el software malintencionado o malware es código diseñado intencionalmente para que lleve a cabo funciones dañinas o no deseadas. El malware puede estar dirigido a hardware, software, datos confidenciales o usuarios de cualquier aplicación que utilice el malware. Debes quitar el malware del proyecto y buscar un reemplazo alternativo más seguro para la dependencia.

Avisos revisados por GitHub

Los avisos revisados por GitHub se vinculan a los paquetes dentro de los ecosistemas que admitimos. Revisamos cuidadosamente cada aviso de validez y garantizamos que contienen una descripción completa y la información del ecosistema y del paquete.

Por lo general, asignamos a los ecosistemas compatibles un nombre en función del registro de paquetes asociado del lenguaje de programación de software. Revisamos los avisos si corresponden a una vulnerabilidad de un paquete proveniente de un registro compatible.

Si tienes alguna sugerencia sobre un ecosistema nuevo para el que deberíamos brindar soporte técnico, abre una incidencia para analizarla.

Si habilita las Dependabot alerts para repositorios, recibirá una notificación automática cuando una advertencia nueva revisada por GitHub informe de una vulnerabilidad en un paquete del que dependa. Para más información, consulta Acerca de las alertas Dependabot.

Avisos sin revisar

Los avisos no revisados se publican automáticamente en el GitHub Advisory Database, directamente desde la fuente de base de datos de vulnerabilidades nacional.

El Dependabot no crea Dependabot alerts para las asesorías sin revisar, ya que este tipo de asesoría no se revisa en su validez o finalización.

Advertencias de software malicioso

Los avisos de malware se relacionan con vulnerabilidades causadas por malware y son exclusivos del ecosistema de npm . Los publicamos automáticamente en GitHub Advisory Database, directamente desde la información proporcionada por el equipo de seguridad de npm.

Dependabot no genera alertas cuando se detecta software malicioso, ya que la mayoría de vulnerabilidades no pueden ser resueltas por usuarios de nivel inferior. Puede ver advertencias de software malicioso buscando type:malware en los GitHub Advisory Database.

Nuestras advertencias de software malicioso son principalmente sobre ataques de sustitución. Durante este tipo de ataque, un atacante publica un paquete en el registro público con el mismo nombre que una dependencia de la que dependen los usuarios de un registro privado o de terceros, con la esperanza de que se consuma la versión maliciosa. Dependabot no examina las configuraciones del proyecto para determinar si los paquetes proceden de un registro privado, por lo que no estamos seguros de si usa la versión maliciosa o una versión no maliciosa. Los usuarios con sus dependencias enfocadas de manera adecuada no deben verse afectados por el software malicioso.

Información en avisos de seguridad

En esta sección, puede encontrar información más detallada sobre atributos de datos específicos en GitHub Advisory Database.

Identificadores GHSA

Cada aviso de seguridad, independientemente de su tipo, tiene un identificador único denominado identificador GHSA. Se asigna un calificador de GHSA-ID cuando se crea un nuevo aviso en GitHub o se agrega a GitHub Advisory Database desde cualquiera de los orígenes admitidos.

La sintaxis de los identificadores GHSA sigue este formato: GHSA-xxxx-xxxx-xxxx donde:

  •         `x` es una letra o un número del siguiente conjunto: `23456789cfghjmpqrvwx`.
    
  • Fuera de la parte GHSA del nombre:
    • Los números y letras se asignan aleatoriamente.
    • Todas las letras son minúsculas.

Puedes validar un identificador GHSA mediante una expresión regular.

Bash
/GHSA(-[23456789cfghjmpqrvwx]{4}){3}/

Niveles de CVSS

GitHub Advisory Database admite CVSS versión 3.1 y CVSS versión 4.0.

Cada aviso de seguridad contiene información sobre la vulnerabilidad o el malware, la que puede incluir la descripción, la gravedad, el paquete afectado, el ecosistema del paquete, las versiones afectadas y las versiones a las que se aplicaron revisiones, el impacto e información opcional como referencias, soluciones alternativas y créditos. Adicionalmente, las asesorías de la National Vulnerability Database contiene un enlace al registro de CVE, en donde puedes leer más sobre los detalles de la vulnerabilidad, su puntuación de CVSS y su nivel de severidad cualitativo. Para obtener más información, consulte la Base de datos nacional de vulnerabilidades del Instituto Nacional de Estándares y Tecnología.

El nivel de gravedad es uno de los cuatro niveles posibles definidos en el Sistema común de puntuación de vulnerabilidades (CVSS), sección 5.

  • Low
  • Medio/Moderado
  • High
  • Crítico

La GitHub Advisory Database utiliza los niveles del CVSS tal como se describen anteriormente. Si GitHub obtiene un CVE, GitHub Advisory Database usa la versión de CVSS asignada por el encargado de mantenimiento, que puede ser la versión 3.1 o 4.0. Si se importa el CVE, GitHub Advisory Database será compatible con las versiones de CVSS 4.0, 3.1 y 3.0..

También puede unir GitHub Security Lab para examinar temas relacionados con la seguridad y colaborar en herramientas y proyectos de seguridad.

Puntuaciones de EPSS

El sistema de puntuación de predicción de vulnerabilidades o EPSS es un sistema diseñado por el foro global de respuesta a incidentes y equipos de seguridad (FIRST) para cuantificar la probabilidad de vulnerabilidad. El modelo genera una puntuación de probabilidad entre 0 y 1 (0 y 100 %), donde cuanto mayor sea la puntuación, mayor será la probabilidad de que se aproveche una vulnerabilidad. Para obtener más información acerca de FIRST, consulte https://www.first.org/.

GitHub Advisory Database incluye puntuaciones de EPSS de FIRST para avisos que contienen CVE con los datos de EPSS correspondientes. GitHub también muestra el percentil de puntuación de EPSS, que es la proporción de todas las vulnerabilidades puntuadas con la misma o menor puntuación de EPSS.

Por ejemplo, si un aviso tenía una puntuación de EPSS que tenía un porcentaje del 90,534 % en el percentil 95, según el modelo de EPSS, esto significa que:

  • Hay un 90,534 % de probabilidad de que esta vulnerabilidad se aproveche libremente en los próximos 30 días.
  • Se considera que el 95% del total de vulnerabilidades modeladas tienen menos probabilidades de ser explotadas en los próximos 30 días que esta vulnerabilidad.

Puede encontrar más información sobre cómo interpretar estos datos en la Guía del usuario de EPSS de FIRST. Esta información le ayuda a comprender cómo se puede usar tanto el porcentaje como el percentil para interpretar la probabilidad de que se pueda aprovechar una vulnerabilidad libremente según el modelo de FIRST. Para obtener más información, consulte la Guía de usuario de EPSS de FIRST en el sitio web de FIRST.

FIRST también proporciona información adicional sobre la distribución de sus datos de EPSS. Para obtener más información, consulte la Documentación de datos y estadísticas de EPSS en el sitio web de FIRST.

Nota:

GitHub mantiene actualizados los datos de EPSS con una acción de sincronización diaria. Aunque los porcentajes de puntuación de EPSS siempre se sincronizarán completamente, los percentiles de puntuación solo se actualizarán cuando sean significativamente diferentes.

En GitHub, no creamos estos datos, sino que los obtenemos de FIRST, lo que significa que estos datos no se pueden editar en las contribuciones de la comunidad. Para obtener más información sobre las contribuciones de la comunidad, consulte Edición de avisos de seguridad en la base de avisos de GitHub.

Contribuciones de la comunidad

Una contribución de la comunidad es una solicitud de incorporación de cambios enviada al github/advisory-database repositorio que mejora el contenido de un aviso de seguridad global. Al realizar una contribución de la comunidad, puede editar o agregar cualquier detalle, incluidos ecosistemas afectados adicionales, el nivel de gravedad o la descripción de quién se ve afectado. El equipo de protección de GitHub Security Lab revisará las contribuciones enviadas y las publicará en GitHub Advisory Database si se aceptan.

Lectura adicional