Skip to main content

Buscar vulnerabilidades de seguridad en la Base de Datos de Asesorías de GitHub

La GitHub Advisory Database te permite buscar vulnerabilidades que afecten proyectos de código abierto, ya sea manualmente o por coincidencia exacta, en GitHub.

Acerca de las vulnerabilidades de seguridad

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.

Acerca de GitHub Advisory Database

La GitHub Advisory Database contiene una lista de vulnerabilidades de seguridad conocidas, agrupadas en dos categorías: asesorías que revisó GitHub y asesorías sin revisar.

Agregamos vulnerabilidades a la GitHub Advisory Database desde las siguientes fuentes:

Acerca de las asesorías que revisa GitHub

Las asesorías que revisa GitHub son vulnerabilidades de seguridad que se mapearon a paquetes que rastrea la gráfica de dependencias de GitHub.

Revisamos la validez de cada asesoría cuidadosamente. Cada asesoría que revisa GitHub tiene una descripción completa y contiene información tanto del ecosistema como del paquete.

Si habilitas las Las alertas del dependabot para tus repositorios, se te notifica automáticamente cuando una asesoría que revisa GitHub afecta a los paquetes de los que dependes. Para obtener más información, consulta la sección "Acerca de las Las alertas del dependabot".

Acerca de las asesorías 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 Las alertas del dependabot para las asesorías sin revisar, ya que este tipo de asesoría no se revisa en su validez o finalización.

Acerca de las asesorías de seguridad

Cada asesoría de seguridad contiene información sobre la vulnerabilidad, la cual puede incluir la descripción, severidad, paquete afectado, ecosistema del paquete, versiones afectadas y versiones parchadas, impacto e información opcional, tal como referencias, soluciones alternas 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, consulta la "National Vulnerability Database" del Instituto Nacional de Estándares y Tecnología.

El nivel de gravedad es uno de cuatro niveles posibles que se definen en el Sistema de clasificación de vulnerabilidades comunes (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 puedes unirte a GitHub Security Lab para buscar temas relacionados con seguridad y contribuir con las herramientas y proyectos de seguridad.

Acceder a una asesoría en la GitHub Advisory Database

  1. Navega hasta https://github.com/advisories.

  2. Opcionalmente, para filtrar la lista, utiliza cualquiera de los menúes desplegables. Filtros desplegables

    Tip: Puedes utilizar la barra lateral a la izquierda para explorar las asesorías que revisa GitHub y aquellas sin revisar, por separado.

  3. Da clic en cualquier asesoría para ver los detalles.

También se puede acceder a la base de datos utilizando la API de GraphQL. Para obtener más información, consulta la sección "evento de webhook de security_advisory".

Editar una asesoría en la GitHub Advisory Database

Puedes sugerir mejoras a cualquier asesoría en la GitHub Advisory Database. Para obtener más información, consulta la sección "Editar las asesorías de seguridad en la GitHub Advisory Database".

Buscar en la GitHub Advisory Database por coincidencia exacta

Puedes buscar la base de datos y utilizar los calificadores para definir más tu búsqueda. Por ejemplo, puedes buscar las asesorías que se hayan creado en una fecha, ecosistema o biblioteca específicos.

El formato de fecha debe seguir el estándar ISO8601, el cual es YYYY-MM-DD (año-mes-día). También puedes agregar información de tiempo ocpional THH:MM:SS+00:00 después de la fecha, para buscar por hora, minuto y segundo. Se hace agregando T, seguido de HH:MM:SS (hora-minutos-segundos), y un intervalo de UTC (+00:00).

Cuando buscas una fecha, puedes utilizar los calificadores de mayor qué, menor qué y rango para filtrar aún más los resultados. Para obtener más información, consulta la sección "Entender la sintaxis de búsqueda".

QualifierEjemplo
type:reviewedtype:reviewed mostrará las asesorías que revisa GitHub.
type:unreviewedtype:unreviewed mostrará las asesorías sin revisar.
GHSA-IDGHSA-49wp-qq6x-g2rf mostrará la asesoría con esta ID de GitHub Advisory Database.
CVE-IDCVE-2020-28482 mostrará la asesoría con este número de ID de CVE.
ecosystem:ECOSYSTEMecosystem:npm mostrará únicamente asesorías que afecten paquetes NPM.
severity:LEVELseverity:high mostrará únicamente asesorías con nivel de gravedad alto.
affects:LIBRARYaffects:lodash mostrará únicamente asesorías que afecten la biblioteca lodash.
cwe:IDcwe:352 mostrará únicamente las asesorías con este número de CWE.
credit:USERNAMEcredit:octocat mostrará únicamente las asesorías que se atribuyen a la cuenta de usuario "octocat".
sort:created-ascsort:created-asc organizará los resultados para mostrar las asesorías más viejas primero.
sort:created-descsort:created-desc organizará los resultados para mostrar las asesorías más nuevas primero.
sort:updated-ascsort:updated-asc organizará los resultados para mostrar aquellos actualizados menos recientemente.
sort:updated-descsort:updated-desc organizará los resultados para mostrar los aquellos actualizados más recientemente.
is:withdrawnis:withdrawn mostrará únicamente las asesorías que se han retirado.
created:YYYY-MM-DDcreated:2021-01-13 mostrará únicamente las asesorías creadas en esta fecha.
updated:YYYY-MM-DDupdated:2021-01-13 mostrará únicamente asesorías actualizadas en esta fecha.

Visualizar tus repositorios vulnerables

Para cualquier asesoría que revise GitHub en la GitHub Advisory Database, puedes ver cuáles de tus repositorios se ven afectados por esa vulnerabilidad de seguridad. Para ver un repositorio vulnerable, debes tener acceso a las Las alertas del dependabot de este. Para obtener más información, consulta la sección "Acerca de las Las alertas del dependabot".

  1. Navega hasta https://github.com/advisories.
  2. Haz clic en una asesoría.
  3. En la parte superior de la página de la asesoría, haz clic en Alertas del dependabot. Las alertas del dependabot
  4. Opcionalmente, para filtrar la lista, utiliza la barra de búsqueda o los menús desplegables. El menú desplegable de "Organización" te permite filtrar las Las alertas del dependabot por propietario (organización o usuario). Barra de búsqueda y menús desplegables para filtrar alertas
  5. Para obtener más detalles de la vulnerabilidad y para encontrar consejos sobre cómo arreglar el repositorio vulnerable, da clic en el nombre del repositorio.

Leer más