Skip to main content

Detección responsable de secretos genéricos con el análisis de secretos de Copilot

Obtenga información sobre cómo usa el Escaneo secreto de Copilot la IA de forma responsable para analizar y crear alertas de secretos no estructurados, como contraseñas.

¿Quién puede utilizar esta característica?

Escaneo secreto de Copilot está disponible para los siguientes tipos de repositorio:

  • Repositorios propiedad de la organización en GitHub Team o GitHub Enterprise Cloud con GitHub Secret Protection habilitado

Información sobre la detección de secretos genéricos con Escaneo secreto de Copilot

La detección de secretos genéricos del Escaneo secreto de Copilot es una expansión con tecnología de IA de secret scanning que identifica secretos no estructurados (contraseñas) en el código fuente y genera una alerta.

Nota:

No necesita una suscripción a GitHub Copilot para usar la detección de secretos genéricos del Escaneo secreto de Copilot. Las características de Escaneo secreto de Copilot están disponibles para repositorios propiedad de organizaciones y empresas que tienen una licencia para GitHub Secret Protection.

Los usuarios de GitHub Secret Protection ya pueden recibir alertas de detección de secretos por patrones asociados o personalizados detectados en su código fuente, pero los secretos no estructurados no son fáciles de descubrir. El Escaneo secreto de Copilot usa modelos de lenguaje grandes (LLM) para identificar este tipo de secreto.

Cuando se detecta una contraseña, se muestra una alerta en la lista "Generic" de alertas de secret scanning (en la pestaña Security del repositorio, organización o empresa) para que los responsables de mantenimiento y los administradores de seguridad puedan revisar la alerta y, en caso de que sea necesario, eliminar la credencial o aplicar una corrección.

Para los usuarios con GitHub Enterprise Cloud, un propietario de la empresa primero debe establecer una directiva en el nivel empresarial que controle si detección de secretos genéricos se puede habilitar y deshabilitar para repositorios de una organización. De manera predeterminada, esta directiva se configura en "permitida". La característica debe estar habilitada para repositorios y organizaciones.

Procesamiento de entradas

La entrada se limita al texto (normalmente código) que un usuario ingresa en un repositorio. El sistema proporciona este texto al LLM junto con un meta prompt que pide al LLM que encuentre contraseñas dentro del ámbito de la entrada. El usuario no interactúa directamente con el LLM.

El sistema busca contraseñas mediante el LLM. El sistema no recopila datos adicionales, aparte de los que ya recoge la función existente secret scanning.

Salida y visualización

El LLM busca cadenas que se parezcan a contraseñas y verifica que las cadenas identificadas incluidas en la respuesta existan realmente en la entrada.

Estas cadenas detectadas aparecen como alertas en la página de alertas secret scanning, pero se muestran en una lista adicional separada de las alertas de detección de secretos normales. La intención es que esta lista separada se revise con mayor detalle para verificar la validez de los resultados. Cada alerta indica que se detectó mediante IA. Para obtener información sobre cómo ver alertas de secretos genéricos, consulte Visualización y filtrado de alertas de análisis de secretos.

Mejora del rendimiento de detección de secretos genéricos

Para mejorar el rendimiento de detección de secretos genéricos, se recomienda cerrar las alertas de falsos positivos adecuadamente.

Verificar la precisión de las alertas y cerrarlas según proceda

Dado que la detección de secretos genéricos del Escaneo secreto de Copilot puede generar más falsos positivos que la característica secret scanning existente para los patrones de partners, es importante revisar la precisión de estas alertas. Cuando compruebes que una alerta es un falso positivo, asegúrate de cerrar la alerta y marcar el motivo como "Falso positivo" en la GitHub UI. El equipo de desarrollo de GitHub usará la información sobre las ubicaciones de detección y el volumen de falsos positivos para mejorar el modelo. GitHub no tiene acceso a los literales de secretos.

Limitaciones de la detección de secretos genéricos

Al usar la detección de secretos genéricos del Escaneo secreto de Copilot, debe tener en cuenta las siguientes limitaciones.

Ámbito limitado

Actualmente, la Detección de secretos genéricos solo busca instancias de contraseñas en el contenido de git. La característica no busca otros tipos de secretos genéricos, y no busca secretos en contenido no git, como GitHub Issues.

Posibilidad de falsas alertas positivas

La Detección de secretos genéricos puede generar más alertas de falsos positivos en comparación con la función de secret scanning existente (que detecta patrones de partners y tiene una tasa de falsos positivos muy baja). Para mitigar este exceso de ruido, las alertas se agrupan en una lista separada de las alertas de patrones de socios, y los administradores de seguridad y mantenedores deben evaluar cada alerta para verificar su exactitud.

Posibilidad de informes incompletos

Es posible que la Detección de secretos genéricos salte instancias de credenciales verificadas en un repositorio. El LLM mejorará con el tiempo. Eres el único responsable de garantizar la seguridad de tu código.

Limitaciones por diseño

La Detección de secretos genéricos tiene las siguientes limitaciones por diseño:

  • El Escaneo secreto de Copilot no detectará secretos que obviamente sean falsos o contraseñas de prueba o contraseñas con una entropía baja.
  • El Escaneo secreto de Copilot solo detectará un máximo de 100 contraseñas por inserción.
  • Si cinco o más secretos detectados dentro de un único archivo se marcan como falsos positivos, el Escaneo secreto de Copilot dejará de generar nuevas alertas para ese archivo.
  • El Escaneo secreto de Copilot no detecta secretos en archivos generados o de proveedores.
  • El Escaneo secreto de Copilot no detecta secretos en archivos cifrados.
  • El Escaneo secreto de Copilot no detecta secretos en los tipos de archivo: SVG, PNG, JPEG, CSV, TXT, SQL o ITEM.
  • El Escaneo secreto de Copilot no detecta secretos en código de prueba. El Escaneo secreto de Copilot omite las detecciones cuando se cumplen ambas condiciones:
    • La ruta de acceso del archivo contiene "test", "mock" o "spec", Y
    • La extensión del archivo es .cs, .go, .java, .js, .kt, .php, .py, .rb, .scala, .swift o .ts.

Evaluación de la detección de secretos genéricos

La Detección de secretos genéricos está sujeta a un "Red Teaming" de IA responsable y GitHub continuará supervisando la eficacia y seguridad de la función a lo largo del tiempo.

Pasos siguientes

  •         [AUTOTITLE](/code-security/secret-scanning/copilot-secret-scanning/enabling-ai-powered-generic-secret-detection)
    
  •         [AUTOTITLE](/code-security/secret-scanning/managing-alerts-from-secret-scanning)
    

Lectura adicional

  •         [AUTOTITLE](/code-security/secret-scanning/introduction/about-secret-scanning)
    
  •         [AUTOTITLE](/admin/policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-code-security-and-analysis-for-your-enterprise#enforcing-a-policy-to-manage-the-use-of-generic-secret-detection-for-secret-scanning-in-your-enterprises-repositories)