Acerca de secret scanning
Secret scanning es una característica de seguridad que le permite detectar y evitar la inclusión accidental de información confidencial, como claves de API, contraseñas, tokens y otros secretos en el repositorio. Cuando se habilita, secret scanning examina las confirmaciones en repositorios para ver los tipos conocidos de secretos y administradores del repositorio de alertas tras la detección.
Secret scanning examinará todo el historial de Git en todas las ramas presentes en el repositorio de GitHub para buscar secretos, incluso si el repositorio está archivado. GitHub también ejecutará periódicamente un examen completo de historial de Git para nuevos tipos de secretos del contenido existente en repositorios públicos donde secret scanning está habilitado cuando se agregan los nuevos tipos de secretos compatibles.
Además, secret scanning examina:
- Descripciones y comentarios sobre problemas
- Títulos, descripciones y comentarios, en propuestas históricas abiertas y cerradas. Se envía una notificación al asociado correspondiente cuando se detecta un patrón de asociado histórico.
- Títulos, descripciones y comentarios de la solicitud de cambios
- Títulos, descripciones y comentarios en GitHub Discussions
- Wikis
Este escaneo adicional es gratis para repositorios públicos.
Sugerencia
Independientemente del estado de habilitación de las características de Advanced Security, las organizaciones en GitHub Team y GitHub Enterprise pueden ejecutar un informe gratuito para examinar el código de la organización para obtener secretos filtrados, consulta Acerca de la evaluación de riesgos de secretos.
Cuando se filtra un secreto admitido, GitHub genera una alerta secret scanning. Las alertas se notifican en la pestaña Seguridad de los repositorios en GitHub, donde puedes verlas, evaluarlas y resolverlas. Para más información, consulta Administración de alertas del examen de secretos.
Los proveedores de servicio pueden asociarse con GitHub para proporcionar sus formatos de secreto para el análisis de los mismos. secret scanning se ejecuta automáticamente en patrones de asociado de todos los repositorios públicos y paquetes npm públicos. Para obtener información sobre nuestro programa de asociados, consulta Programa asociado del escaneo de secretos.
Las cadenas que coinciden con los patrones que proporcionaron los asociados del examen secreto se notifican directamente al asociado correspondiente y no se muestran en GitHub. Para obtener más información sobre los patrones de asociados, consulta Acerca de las alertas de examen de secretos.
Para obtener más información sobre los secretos y proveedores de servicios que admite secret scanning, consulta Patrones de examen de secretos admitidos.
También puedes usar la API de REST para supervisar los resultados de secret scanning en todos los repositorios o en la organización. Para obtener más información sobre los puntos de conexión de API, consulta Puntos de conexión de la API REST para el examen de secretos.
También puedes utilizar el resumen de seguridad para tener una vista a nivel organizacional de los repositorios en los que habilitaste el secret scanning y las alertas que se encontraron. Para más información, consulta Información general sobre seguridad.
Puedes auditar las acciones realizadas en respuesta a las alertas de secret scanning mediante las herramientas de GitHub. Para más información, consulta Auditoría de alertas de seguridad.
Funcionamiento de secret scanning
A continuación, se muestra un flujo de trabajo típico que explica cómo funciona secret scanning:
-
Detección: Secret scanning examina automáticamente el contenido del repositorio en busca de datos confidenciales, como claves de API, contraseñas, tokens y otros secretos. Busca patrones y heurística que coinciden con tipos conocidos de secretos.
-
Alertas: cuando se detecta un posible secreto, GitHub genera una alerta y notifica a los usuarios y administradores del repositorio pertinentes. Esta notificación incluye detalles sobre el secreto detectado, como su ubicación en el repositorio. Para obtener más información sobre los tipos de alerta y los detalles, consulta Acerca de las alertas de examen de secretos.
-
Revisión: cuando se detecta un secreto, deberá revisar los detalles de la alerta proporcionados.
-
Corrección: después, debes realizar las acciones adecuadas para corregir la exposición. Esto siempre debe incluir la rotación de la credencial afectada para asegurarte de que ya no se puede usar. También puedes incluir la eliminación del secreto del historial del repositorio (mediante herramientas como
git-filter-repo
; consulta Eliminación de datos confidenciales de un repositorio para obtener más detalles), aunque esto probablemente implicará un gran costo en tiempo y esfuerzo, y normalmente no es necesario si se han revocado las credenciales. -
Supervisión: se recomienda auditar y supervisar periódicamente los repositorios para asegurarse de que no se exponen otros secretos.
-
Integración con asociados: GitHub funciona con varios proveedores de servicios para validar secretos. Cuando se detecta un secreto de asociado, GitHub notifica al proveedor para que pueda tomar las medidas adecuadas, como revocar la credencial. Para obtener más información sobre el programa de asociación, consulta Programa asociado del escaneo de secretos.
Acerca de los beneficiosd esecret scanning
-
Seguridad mejorada: el Secret scanning examina los repositorios para obtener información confidencial, como claves de API, contraseñas, tokens y otros secretos. Al detectar estas primeras fases, puede mitigar los posibles riesgos de seguridad antes de que los actores malintencionados los aprovechen.
-
Detección automatizada: la característica examina de forma automática el código base, incluidas las confirmaciones, las propuestas y las solicitudes de cambios, lo que garantiza la protección continua sin necesidad de intervención manual. Esta automatización le permite mantener la seguridad incluso a medida que evoluciona el repositorio.
-
Alertas en tiempo real: cuando se detecta un secreto, el secret scanning proporciona alertas en tiempo real a los administradores y colaboradores del repositorio. Estos comentarios inmediatos permiten realizar acciones de corrección rápidas.
-
Integración con proveedores del servicio: GitHub se asocia con varios proveedores de servicios para validar los secretos detectados. Cuando se detecta un secreto de asociado, GitHub notifica al proveedor de servicio correspondiente para que pueda tomar las medidas adecuadas, como revocar la credencial expuesta. Para más información, consulta Programa asociado del escaneo de secretos.
-
Compatibilidad con patrones personalizados: las organizaciones pueden definir patrones personalizados para detectar tipos de secretos únicos o de propiedad que pueden no estar cubiertos por los patrones predeterminados. Esta flexibilidad le permite tomar medidas de seguridad específicas y adaptadas a su entorno.
-
Capacidad de detectar patrones que no son de proveedor: puede expandir la detección para incluir patrones que no sean del proveedor, como cadenas de conexión, encabezados de autenticación y claves privadas, para el repositorio o la organización.
Personalización de secret scanning
Una vez que secret scanning esté habilitado, puede personalizarlo aún más:
Detección de patrones que no son del proveedor
Busque y detecte secretos que no sean específicos de un proveedor de servicios, como claves privadas y claves de API genéricas. Para más información, consulta Habilitación del análisis de secretos para patrones que no son de proveedor.
Realización de comprobaciones de validez
Las comprobaciones de validez te ayudan a priorizar las alertas indicando qué secretos son active
o inactive
. Para obtener más información, consulta Habilitación de comprobaciones de validez para el repositorio y Evaluación de alertas del examen de secretos.
Definición de patrones personalizados
Defina sus propios patrones para los secretos que use su organización y que secret scanning pueda buscar y detectar. Para más información, consulta Definición de patrones personalizados para el examen de secretos.
Digitalización secreta de Copilot
- Detección de secretos genéricos: Aproveche las funcionalidades de inteligencia artificial de secret scanning para detectar secretos no estructurados, como contraseñas, en el repositorio. Para obtener más información, consulta Detección responsable de secretos genéricos con el análisis de secretos de Copilot.
- Generador de expresiones regulares: Aproveche las funcionalidades de inteligencia artificial de secret scanning para generar expresiones regulares que capturarán todos los patrones personalizados. Para más información, consulta Generación responsable de expresiones regulares con el análisis de secretos de Copilot.
Información adicional
- Habilitación del examen de secretos para el repositorio
- Acerca de la protección de inserción
- Trabajar con análisis de secretos y protección de inserción
- Procedimientos recomendados para evitar la pérdida de datos en la organización
- Inicio rápido para proteger el repositorio
- Mantener tu cuenta y tus datos seguros