Skip to main content

Acerca de GitHub Advisory Database

GitHub Advisory Database contiene una lista de las vulnerabilidades de seguridad y software malicioso, agrupada en tres categorías: advertencias revisadas por GitHub, advertencias no revisadas y advertencias de software malicioso

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, consulta "Formato de vulnerabilidad de código abierto".

Acerca de los 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

Las advertencias revisadas por GitHub son vulnerabilidades de seguridad que se asignaron a paquetes en ecosistemas a los que brindamos soporte. Revisamos cuidadosamente la validez de cada aviso y nos aseguramos de que tengan una descripción completa e información tanto del ecosistema como 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 obtener más información, consulta “Acerca de las alertas Dependabot”.

Avisos sin revisar

Las asesorías sin revisar son vulnerabilidades de seguridad que publicamos automáticamente en la GitHub Advisory Database, directamente desde la fuente de la Base de Datos Nacional de Vulnerabilidades.

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

Nota: Las asesorías relacionadas con malware actualmente se encuentran en versión beta y están sujetas a cambios.

Las advertencias de software malicioso se relacionan con vulnerabilidades causadas por software malicioso y son avisos de seguridad que GitHub publica automáticamente en GitHub Advisory Database, directamente desde la información proporcionada por el equipo de seguridad de npm. Las advertencias de software malicioso son exclusivas del ecosistema de npm. GitHub no edita ni acepta contribuciones de la comunidad en estas advertencias.

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.

Acerca de la información en los avisos de seguridad

En esta sección, puedes encontrar información más detallada sobre avisos de seguridad en la GitHub Advisory Database, como:

  • Identificadores de avisos y qué formato usan estos identificadores.
  • Los niveles de CVSS que se usan para asignar niveles de gravedad.

Acerca de los identificadores GHSA

Cada aviso de seguridad, independientemente de su tipo, tiene un identificador único denominado identificador GHSA. Se asigna un calificador GHSA-ID cuando se crea un nuevo aviso en GitHub.com 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}/

Acerca de los niveles de CVSS

Cada aviso de seguridad contiene información sobre la vulnerabilidad o el malware 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, vea 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".

  • Bajo
  • Medio/Moderado
  • Alto
  • Crítico

La GitHub Advisory Database utiliza los niveles del CVSS tal como se describen anteriormente. Si GitHub obtiene un CVE, la GitHub Advisory Database utilizará el CVSS versión 3.1. Si se importa el CVE, la GitHub Advisory Database será compatible tanto con la versión 3.0 como con la 3.1 del CVSS.

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

Información adicional