Cualquier usuario con permisos de administrador en un repositorio público puede crear un aviso de seguridad.
Cualquiera con permisos de administrador en un repositorio público tendrá también permisos de administrador en todos los avisos de seguridad del mismo. Las personas con permisos de administrador en una asesoría de seguridad pueden agregar colaboradores, y estos tendrán permisos de escritura en dicha asesoría.
Note
Si eres investigador de seguridad, debes ponerte en contacto directamente con los mantenedores para pedirles que creen avisos de seguridad o que emitan CVE en tu nombre en los repositorios que no administras. Pero si la generación de informes de vulnerabilidad privada está habilitada para el repositorio, puedes generar de forma privada un informe de vulnerabilidad por tu cuenta. Para obtener más información, vea «Creación de informes privados de una vulnerabilidad de seguridad».
Acerca de las asesorías de seguridad de repositorio
La divulgación de vulnerabilidades es un área en donde la colaboración entre los reporteros de vulnerabilidades, tales como los investigadores de seguridad, y los mantenedores de proyectos es muy importante. Ambas partes necesitan trabajar en conjunto desde el momento en el que se encuentra una vulnerabilidad de seguridad potencialmente dañina, justo hasta que la vulnerabilidad se divulgue al público en general, idealmente con la disponibilidad de un parche. Habitualmente, cuando alguien deja saber, en privado, a un mantenedor sobre una vulnerabilidad de seguridad, este desarrolará una corrección, la validará y notificacá a los usuarios sobre el proyecto o paquete. Para más información, consulta Acerca de la divulgación coordinada de las vulnerabilidades de seguridad.
Las asesorías de seguridad del repositorio permiten a los mantenedores de repositorios públicos analizar y corregir de forma privada una vulnerabilidad de seguridad en un proyecto. Después de colaborar en una corrección, los mantenedores de repositorios pueden publicar el aviso de seguridad para revelar públicamente la vulnerabilidad de seguridad a la comunidad del proyecto. Al publicar avisos de seguridad, los mantenedores de repositorios facilitan a su comunidad la actualización de las dependencias de paquetes y la investigación del impacto de las vulnerabilidades de seguridad.
Con las asesorías de seguridad de repositorio, puedes hacer lo siguiente:
- Crear un borrador de asesoría de seguridad y utilizarlo para debatir de manera privada sobre el impacto de la vulnerabilidad en tu proyecto. Para más información, consulta Creación de un aviso de seguridad de repositorio.
- Colaborar en privado para solucionar la vulnerabilidad en una bifurcación privada temporaria.
- Publica la asesoría de seguridad para alertar a tu comunidad sobre la vulnerabilidad una vez que se lance el parche. Para más información, consulta Publicación de un aviso de seguridad de repositorio.
También puedes utilizar asesorías de seguridad de repositorio para volver a publicar los detalles de una vulnerabilidad de seguridad que ya has divulgado en otro lugar si copias y pegas los detalles de la vulnerabilidad en una asesoría de seguridad nueva.
También puedes usar la API REST para crear, enumerar y actualizar avisos de seguridad del repositorio. Para más información, consulta Puntos de conexión de API de REST para avisos de seguridad de repositorios.
Puedes dar crédito a los individuos que contribuyeron con una asesoría de seguridad. Para más información, consulta Edición de un aviso de seguridad de repositorio.
Puedes crear una política de seguridad para dar instrucciones a las personas para reportar las vulnerabilidades de seguridad en tu proyecto. Para obtener más información, vea «Agregar una política de seguridad a tu repositorio».
Si creaste una asesoría de seguridad en tu repositorio, esta permanecerá en tu repositorio. Publicamos avisos de seguridad para todos los ecosistemas compatibles con el gráfico de dependencias en la GitHub Advisory Database en github.com/advisories. Cualquiera puede enviar un cambio de un aviso publicado en GitHub Advisory Database. Para más información, consulta Edición de avisos de seguridad en la base de avisos de GitHub.
Si una asesoría de seguridad es específicamente para npm, también la publicamos en las asesorías de seguridad de npm. Para más información, vea npmjs.com/advisories.
También puede unir GitHub Security Lab para examinar temas relacionados con la seguridad y colaborar en herramientas y proyectos de seguridad.
Números de identificación CVE
Las GitHub Security Advisories se construyen sobre las bases de la lista de Vulnerabilidades y Exposiciones Comunes (CVE, por sus siglas en inglés). El formato de asesoría de seguridad en GitHub es un formato estandarizado que coincide con el formato de descripción de CVE.
GitHub es una Autoridad de Numeración de CVE (CNA, por sus siglas en inglés) y está autorizado para asignar números de identificación de CVE. Para más información, consulta Acerca de CVE y Entidades de numeración de CVE en el sitio web de CVE.
Cuando creas una asesoría de seguridad para un repositorio público en GitHub, tienes la opción de proporcionar un número de identificación de CVE para la vulnerabilidad de seguridad. Si quieres un número de identificación CVE para la vulnerabilidad de seguridad en tu proyecto y aún no tienes uno, puedes solicitarlo de GitHub. GitHub habitualmente revisa la solicitud dentro de las primeras 72 horas de su recepción. El solicitar un número de identificación de CVE no convierte tu asesoría de seguridad en pública. Si tu asesoría de seguridad es elegible para un CVE, GitHub reservará un número de identificación de CVE para ésta. Entonces publicaremos los detalles de CVE después de que hayas hecho pública tu asesoría de seguridad. Cualquiera con permisos de administrador en una asesoría de seguridad puede solicitar un número de identificación de CVE.
Si ya tienes un CVE que quieres utilizar, por ejemplo, si utilizas una Autoridad de Numeración de CVE (CNA) diferente a la de GitHub, agrega el CVE al formato de asesoría de seguridad. Esto podría pasar, por ejemplo, si quiers que la asesoría sea consistente con otras comnicaciones que planees enviar al momento de la publicación. GitHub no pude asignar un CVE a tu proyecto si se cubre con otro CNA.
Una vez que hayas publicado la asesoría de seguridad y que GitHub haya asignado un número de identificación CVE a la vulnerabilidad, GitHub publicará el CVE a la base de datos de MITRE. Para más información, consulta Publicación de un aviso de seguridad de repositorio.
Dependabot alerts para las asesorías de seguridad publicadas
GitHub revisará cada asesoría de seguridad que se haya publicado, la agregará a la GitHub Advisory Database, y podría utilzar esta asesoría de seguridad para enviar Dependabot alerts a los repositorios que se vean afectados. Si la asesoría de seguridad viene de una bifurcación, únicamente enviaremos una alerta si ésta tiene un paquete que se publique con un nombre único y esté en un registro de paquetes público. Este proceso puede tomar hasta 72 horas y GitHub podría contactarte para obtener más información.
Para más información sobre Dependabot alerts, consulta "Acerca de las alertas Dependabot" y "Sobre las actualizaciones de seguridad de Dependabot". Para más información sobre GitHub Advisory Database, consulta "Exploración de los avisos de seguridad en GitHub Advisory Database".