¿Cómo escanear el repositorio de GitHub en busca de credenciales?

Averigüe si su repositorio de GitHub contiene información confidencial, como contraseña, claves secretas, información confidencial, etc.

Millones de usuarios utilizan GitHub para alojar y compartir códigos. Es fantástico, pero a veces usted, los desarrolladores o los propietarios del código pueden volcar accidentalmente información confidencial en un repositorio público, lo que puede ser un desastre.

Hay muchos incidentes en los que se filtraron datos confidenciales en GitHub. No puede eliminar el error humano, pero puede tomar medidas para reducirlo.

¿Cómo se asegura de que su repositorio no contenga una contraseña o clave?

Respuesta simple: no almacenar.

Como práctica recomendada, se debe utilizar un software de gestión de secretos para almacenar toda la información confidencial.

Pero en realidad, no puedes controlar el comportamiento de otras personas si trabajas en equipo.

Por cierto, si usa Git para inicializar e implementar su aplicación, crea una carpeta .git y, si se puede acceder a ella a través de Internet, puede exponer una confirmación confidencial, que no desea y debe considerar bloquear el URI de .git.

Las siguientes soluciones lo ayudan a encontrar errores en su repositorio.

Escaneo secreto

La función de escaneo de secretos de GitHub es una poderosa herramienta que detecta secretos accidentales ocultos en su código, protegiéndolo contra fugas y compromisos de datos. Funciona a la perfección tanto para repositorios públicos como privados, revisando meticulosamente cada rincón y grieta para descubrir cualquier secreto deslizado.

Pero sus capacidades continúan. Una vez que se descubre un secreto, GitHub toma medidas proactivas al alertar a los respectivos proveedores de servicios, incitándolos a mitigar rápidamente cualquier riesgo potencial. Con respecto a los repositorios privados, GitHub hace un esfuerzo adicional al notificar a los propietarios o administradores de la organización, lo que garantiza que las personas adecuadas dentro de su equipo estén al tanto de la situación de inmediato.

Para proporcionar una visibilidad continua, las advertencias se muestran de forma destacada en el repositorio, lo que sirve como una señal clara para que usted y su equipo tomen medidas inmediatas. La función de escaneo secreto de GitHub actúa como su aliado vigilante, trabajando diligentemente para garantizar que ningún secreto pase desapercibido y que sus proyectos permanezcan seguros.

Aproveche el poder del escaneo y el código secretos con confianza, sabiendo que su información confidencial está protegida.

Secretos Git

Permítame presentarle git-secrets, una herramienta que puede salvarnos de la vergüenza de agregar accidentalmente secretos a nuestros repositorios de Git. Escanea confirmaciones, confirma mensajes y fusiona para evitar la fuga de secretos en nuestro código.

Para comenzar con Windows, simplemente ejecutamos el script de PowerShell install.ps1. Copia los archivos necesarios a un directorio de instalación y los agrega a nuestra RUTA de usuario. Esto hace que git-secrets sea fácilmente accesible desde cualquier lugar de nuestro entorno de desarrollo.

Una vez instalado, git-secrets se convierte en nuestro guardián vigilante, verificando si algún compromiso, mensaje de compromiso o historial de combinación coincide con nuestros patrones prohibidos configurados. Si detecta una coincidencia, rechaza la confirmación, lo que evita que se escape información confidencial.

Podemos agregar patrones de expresiones regulares a un archivo .gitallowed en el directorio raíz del repositorio para ajustar los secretos de git. Esto ayuda a filtrar cualquier línea que pueda desencadenar una advertencia pero que sea legítima, logrando el equilibrio adecuado entre seguridad y conveniencia.

Al escanear un archivo, git-secrets extrae todas las líneas que coinciden con los patrones prohibidos y proporciona información detallada, incluidas las rutas de los archivos, los números de línea y las líneas coincidentes. También verifica si las líneas coincidentes coinciden con nuestros patrones permitidos registrados. La confirmación o fusión se considera segura si los patrones permitidos cancelan todas las líneas marcadas. Sin embargo, git-secrets bloquea el proceso si alguna línea coincidente no coincide con un patrón permitido.

Al usar git-secrets, debemos ser cautelosos. Los patrones prohibidos no deben ser demasiado amplios y los patrones permitidos no deben ser demasiado permisivos. Probar nuestros patrones usando llamadas ad-hoc a git secrets: escanear $filename asegura que funcionen según lo previsto.

Si está ansioso por profundizar en los secretos de git o desea contribuir a su desarrollo, encontrará el proyecto en GitHub. Es un proyecto de código abierto que fomenta las contribuciones de la comunidad. ¡Únete a la comunidad y marca la diferencia!

Con git-secrets, podemos codificar con confianza, sabiendo que los secretos accidentales no pondrán en peligro nuestros proyectos. Adoptemos esta herramienta y mantengamos segura nuestra información confidencial.

Supervisor de Repos

Tengo esta emocionante noticia: Repo-supervisor es una poderosa herramienta que detecta secretos y contraseñas en su código. Instalarlo es muy sencillo: simplemente agregue un webhook a su repositorio de GitHub. Repo-supervisor ofrece dos modos: escanear solicitudes de extracción en GitHub o escanear directorios locales desde la línea de comandos. Elige el modo que más te convenga.

Para embarcarse en su viaje de git-secrets, simplemente visite el repositorio de GitHub y descargue la versión más reciente. Allí, descubrirá paquetes adaptados para la implementación de AWS Lambda y un modo CLI fácil de usar. Con el modo CLI, puede sumergirse directamente sin ninguna configuración adicional, mientras que el modo de solicitud de extracción requiere la implementación en AWS Lambda. ¡Elija la opción que se adapte a sus necesidades y comience a aprovechar el poder de git-secrets para reforzar la seguridad de su base de código!

En el modo CLI, proporcione un directorio como argumento y Repo-supervisor escanea los tipos de archivos admitidos, procesando cada archivo con un tokenizador específico para su tipo. Ejecuta controles de seguridad en cadenas extraídas y proporciona informes claros en texto sin formato o formato JSON.

Para el modo de solicitud de extracción, Repo-supervisor procesa las cargas de webhook, extrae los archivos modificados y realiza comprobaciones de seguridad en las cadenas extraídas. Si se encuentran problemas, establece el estado del CI en error, vinculándolo al informe. Ningún problema significa un estado de CI exitoso.

Repo-supervisor es un increíble inspector de código que mantiene seguros nuestros secretos y contraseñas. Garantiza la integridad de nuestro código base, que es crucial en nuestra vida profesional.

¡Prueba Repo-supervisor! Instálelo, configure el webhook y déjelo buscar secretos y contraseñas. ¡Disfruta de la capa extra de seguridad!

Cerdo Trufado

Permítame presentarle una herramienta increíble llamada Truffle Hog. Considérelo su leal compañero de código, rastreando diligentemente cualquier rastro de información confidencial que aceche dentro de sus repositorios. Truffle Hog es un maestro en profundizar en la historia de su proyecto, escaneando meticulosamente en busca de posibles filtraciones de secretos valiosos, como claves API y contraseñas.

Con su arsenal de comprobaciones de alta entropía y patrones de expresiones regulares, esta herramienta está preparada para descubrir estos tesoros ocultos y garantizar que su código permanezca seguro. ¡Dile adiós a las filtraciones secretas y abraza la protección vigilante de Truffle Hog!

Y aquí está la mejor parte: la última versión de Truffle Hog está repleta de muchas funciones nuevas y potentes. Ahora cuenta con más de 700 detectores de credenciales que verifican activamente sus respectivas API. También admite escanear GitHub, GitLab, sistemas de archivos, S3, GCS y Circle CI, lo que lo hace increíblemente versátil.

No solo eso, TruffleHog ahora tiene soporte nativo para la verificación instantánea de claves privadas contra millones de usuarios de GitHub y miles de millones de certificados TLS utilizando su tecnología Driftwood de vanguardia. Incluso puede escanear binarios y otros formatos de archivo, asegurando que no quede piedra sin remover.

Además, TruffleHog está disponible como una acción de GitHub y un gancho de confirmación previa, integrándose perfectamente en su flujo de trabajo de desarrollo. Está diseñado para ser conveniente y fácil de usar, brindando una capa adicional de seguridad sin causar molestias innecesarias.

Con Truffle Hog en su conjunto de herramientas, puede proteger con confianza su código de exposiciones accidentales y mantener sus secretos bajo llave. Así que pruebe Truffle Hog y deje que haga su magia para salvaguardar sus proyectos.

sabueso

GitHound va más allá de las limitaciones de otras herramientas al aprovechar la búsqueda de código de GitHub, la coincidencia de patrones y la búsqueda del historial de confirmaciones. Puede buscar en todo GitHub, no solo en repositorios, usuarios u organizaciones específicos. ¿Cuan genial es eso?

Ahora, profundicemos en sus fantásticas características. Git Hound utiliza la búsqueda de código de GitHub/Gist, lo que le permite identificar información confidencial dispersa en la vasta extensión de GitHub, cargada por cualquier persona. Es como tener un mapa del tesoro para descubrir posibles vulnerabilidades.

Pero GitHound no se detiene ahí. Detecta datos confidenciales empleando coincidencia de patrones, información contextual y entropía de cadenas. Incluso profundiza en el historial de confirmaciones para encontrar secretos eliminados incorrectamente, asegurando que no quede piedra sin remover.

Para simplificar su vida, GitHound incorpora un sistema de puntuación que filtra los falsos positivos comunes y optimiza su búsqueda para la excavación intensiva del repositorio. Está diseñado para ahorrarle tiempo y esfuerzo.

¿Y adivina qué? Git Hound está equipado con capacidades de detección y decodificación base64. Puede revelar secretos ocultos codificados en formato base64, lo que le brinda una ventaja adicional en su búsqueda de información confidencial.

Además, GitHound ofrece opciones para integrarlo en sistemas más grandes. Puede generar una salida JSON y personalizar las expresiones regulares de acuerdo con sus necesidades específicas. Se trata de flexibilidad y de empoderarte para construir sobre sus cimientos.

Ahora, hablemos de sus emocionantes casos de uso. En el mundo corporativo, GitHound se vuelve invaluable en la búsqueda de claves API de clientes expuestas. Ayuda a proteger la información confidencial, lo que garantiza el más alto nivel de seguridad.

Para los cazadores de recompensas de errores, Git Hound es un cambio de juego. Le permite buscar tokens de API de empleados filtrados, lo que lo ayuda a descubrir vulnerabilidades y obtener recompensas bien merecidas. ¿No es increíble Git Hound?

gitleaks

Gileaks está diseñado para hacer tu vida más fácil. Es una solución todo en uno fácil de usar que detecta secretos, ya sea que estén enterrados en el pasado o presente de su código. Di adiós al riesgo de exponer contraseñas, claves de API o tokens en tus proyectos.

Instalar Gileaks es muy sencillo. Puede usar Homebrew, Docker o Go, según sus preferencias. Además, ofrece opciones de implementación flexibles. Puede configurarlo como un gancho de confirmación previa directamente en su repositorio o aprovechar Gitleaks-Action para integrarlo sin problemas en sus flujos de trabajo de GitHub. Se trata de encontrar la configuración que más le convenga.

Ahora, hablemos de los comandos que ofrece Gitleaks. Primero, tenemos el comando «detectar». Este poderoso comando le permite escanear repositorios, directorios y archivos individuales. Ya sea que trabaje en su propia máquina o en un entorno de CI, Gitleaks lo tiene cubierto. Asegura que ningún secreto se escape por las grietas.

Pero eso no es todo. Gitleaks también proporciona el comando «proteger». Este comando analiza explícitamente los cambios no confirmados en sus repositorios de Git. Actúa como su última línea de defensa, evitando que se cometan secretos sin darse cuenta. Es una protección que mantiene su código limpio y seguro.

Tines, un nombre de confianza en la industria, patrocina Gitleaks. Con su apoyo, Gitleaks continúa evolucionando y mejorando, ofreciéndole las mejores capacidades de detección de secretos.

Entonces, mis jóvenes profesionales, no dejen que los secretos comprometan sus proyectos. Instálelo, configúrelo y déjelo hacer el trabajo duro de escanear y proteger sus repositorios

Escáner de seguridad de repositorios

El escáner de seguridad del repositorio es una herramienta de línea de comandos invaluable diseñada para ayudar en la identificación de datos confidenciales comprometidos inadvertidamente, como contraseñas, tokens, claves privadas y otros secretos, dentro de su repositorio de Git.

Esta poderosa herramienta le permite detectar y abordar de manera proactiva las posibles vulnerabilidades de seguridad que surgen de la inclusión no intencional de información confidencial en su base de código. Al emplear el escáner de seguridad del repositorio, puede garantizar la integridad de su repositorio y proteger sus datos confidenciales del acceso no autorizado.

Repo Security Scanner profundiza sin esfuerzo en el historial completo del repositorio y presenta rápidamente resultados completos del análisis. Al realizar escaneos exhaustivos, le permite identificar de manera proactiva y abordar rápidamente las posibles vulnerabilidades de seguridad que pueden surgir de los secretos expuestos en el software de código abierto.

Guardián Git

GitGuardian es una herramienta que permite a los desarrolladores, equipos de seguridad y cumplimiento monitorear la actividad de GitHub en tiempo real e identificar vulnerabilidades debido a secretos expuestos como tokens de API, certificados de seguridad, credenciales de bases de datos, etc.

GitGuardian permite a los equipos aplicar políticas de seguridad en código público y privado y otras fuentes de datos.

Las características principales de GitGuardian son;

  • La herramienta ayuda a encontrar información confidencial, como secretos en el código fuente privado,
  • Identifique y corrija las fugas de datos confidenciales en GitHub público.
  • Es una herramienta de detección de secretos eficaz, transparente y fácil de configurar.
  • Cobertura más amplia y base de datos integral para cubrir casi cualquier información confidencial en riesgo.
  • Técnicas sofisticadas de coincidencia de patrones que mejoran el proceso de descubrimiento y la eficacia.

Conclusión

Espero que esto le dé una idea de cómo encontrar datos confidenciales en el repositorio de GitHub. Si está utilizando AWS, consulte este artículo para escanear la seguridad y la configuración incorrecta de AWS. Estén atentos a las herramientas más emocionantes que mejorarán su vida profesional. ¡Feliz codificación y mantén esos secretos bajo llave! 🔒