Luego de examinar los 5,6 millones de repositorios públicos en GitLab Cloud, un ingeniero de seguridad identificó más de 17,000 secretos expuestos en más de 2,800 dominios distintos.
GitLab es una plataforma basada en la web que utiliza Git y es ampliamente empleada por desarrolladores de software, equipos de mantenimiento y DevOps para albergar código, realizar tareas de CI/CD, colaborar en el desarrollo y gestionar repositorios.
Luke Marshall utilizó la herramienta de código abierto TruffleHog para investigar los repositorios en busca de credenciales sensibles, tales como claves API, contraseñas y tokens.
Este investigador ya había
analizado Bitbucket, donde descubrió 6,212 secretos en 2.6 millones de repositorios. También
examinó el conjunto de datos Common Crawl, que se utiliza para entrenar modelos de IA y que reveló 12,000 secretos válidos.
Marshall empleó la API pública de GitLab para listar todos los repositorios públicos de GitLab Cloud, utilizando un script de Python personalizado para paginar los resultados y ordenarlos por ID de proyecto. Este método dio como resultado 5.6 millones de repositorios únicos, cuyos nombres se enviaron a un Servicio de Cola Simple (SQS) de AWS.
Posteriormente, una función de AWS Lambda recuperó el nombre del repositorio de SQS, ejecutó TruffleHog y registró los resultados. «Cada invocación de Lambda realizaba un simple escaneo a través de TruffleHog con una concurrencia de 1000»,
explicó Marshall. «Esta configuración me permitió finalizar el escaneo de 5.6 millones de repositorios en poco más de 24 horas».
El coste total del escaneo de todos los repositorios públicos de GitLab Cloud bajo este método fue de U$S 770. El investigador halló 17,430 secretos activos verificados, casi el triple de lo encontrado en Bitbucket, y una densidad de secretos un 35% mayor (secretos por repositorio).
Según datos históricos, la mayoría de los secretos filtrados son posteriores a 2018. No obstante, Marshall también descubrió algunos secretos antiguos que datan de 2009 y que siguen siendo válidos en la actualidad. La mayoría de los secretos comprometidos, más de 5,200, correspondían a credenciales de Google Cloud Platform (GCP), seguidas por claves de MongoDB, tokens de bots de Telegram y claves de OpenAI.
El investigador también encontró más de 400 claves de GitLab filtradas en los repositorios que analizó.
<
Con el fin de garantizar una divulgación responsable y dado que los secretos descubiertos estaban vinculados a 2,804 dominios únicos, Marshall recurrió a la automatización para notificar a las partes implicadas, utilizando Claude Sonnet 3.7 con capacidad de búsqueda web y un script de Python para generar correos electrónicos.
Durante este proceso, el investigador recibió múltiples recompensas por errores que sumaron un total de 9,000 dólares. Informa que muchas organizaciones procedieron a revocar sus secretos en respuesta a las notificaciones que enviaron. Sin embargo, un número no especificado de secretos sigue expuesto en GitLab.
Fuente: BC
Con Información de blog.segu-info.com.ar