Após analisar 5,6 milhões de repositórios públicos na GitLab Cloud, um engenheiro de segurança identificou mais de 17 mil segredos expostos, distribuídos em mais de 2.800 domínios únicos.
Luke Marshall utilizou a ferramenta open source TruffleHog para vasculhar o código desses repositórios em busca de credenciais sensíveis, como chaves de API, senhas e tokens.
Antes deste levantamento, Marshall já havia escaneado o Bitbucket, onde encontrou 6.212 segredos em 2,6 milhões de repositórios.
Ele também analisou o conjunto de dados Common Crawl, muito usado para treinar modelos de IA, identificando 12 mil segredos válidos.
A GitLab é uma plataforma web para Git bastante utilizada por desenvolvedores, mantenedores e equipes de DevOps para hospedagem de código, operações de CI/CD, colaboração e gerenciamento de repositórios.
Para realizar o scan, Marshall usou o endpoint público da API do GitLab para listar todos os repositórios públicos da GitLab Cloud.
Com um script em Python, ele paginou os resultados e os ordenou pelo ID do projeto.
Esse processo retornou 5,6 milhões de repositórios únicos, cujos nomes foram enviados para o AWS Simple Queue Service (SQS).
Em seguida, uma função AWS Lambda retirava os nomes da fila, executava o TruffleHog em cada repositório e registrava os resultados.
“Cada invocação da Lambda executava um comando simples do TruffleHog com concorrência configurada para 1.000,” explica Marshall.
“Esse setup me permitiu concluir a varredura dos 5,6 milhões de repositórios em pouco mais de 24 horas.”
O custo total dessa análise na GitLab Cloud foi de 770 dólares.
O pesquisador identificou 17.430 segredos confirmados e ativos — quase três vezes mais do que no Bitbucket — com uma densidade 35% maior de segredos por repositório.
Dados históricos indicam que a maioria dos segredos vazados surgiu a partir de 2018.
Porém, Marshall também detectou segredos antigos, datados de 2009, que permanecem válidos até hoje.
Entre os segredos mais vazados, destacam-se mais de 5.200 credenciais da Google Cloud Platform (GCP), além de chaves do MongoDB, tokens de bots do Telegram e chaves da OpenAI.
Também foram identificadas pouco mais de 400 chaves do GitLab vazadas nos repositórios analisados.
Com foco na divulgação responsável, e considerando que os segredos estavam ligados a 2.804 domínios únicos, Marshall automatizou o processo de notificação dos afetados.
Para isso, ele usou o modelo Claude Sonnet 3.7, com capacidade de busca na web, aliado a um script em Python, para gerar os e-mails de alerta.
Como resultado das notificações e das vulnerabilidades relatadas, o pesquisador recebeu diversos bug bounties, totalizando cerca de 9 mil dólares.
Marshall relata que muitas organizações revogaram suas credenciais após o contato, mas um número não revelado de segredos ainda permanece exposto na GitLab.
Publicidade
Tenha acesso aos melhores hackers éticos do mercado através de um serviço personalizado, especializado e adaptado para o seu negócio. Qualidade, confiança e especialidade em segurança ofensiva de quem já protegeu centenas de empresas. Saiba mais...