A Truffle Security publicou os resultados de sua análise de credenciais vazadas em repositórios do GitHub. Após examinar 224 milhões de repositórios contendo 58 bilhões de arquivos, foram identificadas 543 credenciais únicas (tokens, chaves e senhas) que ainda eram válidas. As credenciais válidas permaneceram nos repositórios por pelo menos um ano, visto que o estudo utilizou um snapshot do GitHub de 7 de agosto do ano passado, e a verificação de validade das credenciais, implementada por meio de chamadas de teste a APIs, serviços de rede e hosts, foi realizada no final de julho deste ano.
O tempo médio de exposição das credenciais foi estimado em 784 dias, com as chaves de acesso mais antigas ainda válidas datando de 2009. Aproximadamente 200 credenciais válidas foram colocadas em repositórios após a ativação do mecanismo padrão do GitHub para bloquear vazamentos de dados sensíveis e tokens de acesso, que verifica vazamentos durante as requisições push. Os vazamentos não foram detectados devido ao fato de estarem em formatos não suportados pela proteção implementada, embora a filtragem em si tenha reduzido o vazamento de credenciais reconhecíveis em aproximadamente metade.
Descobriu-se que o GitHub detecta com sucesso vazamentos de tokens para serviços comuns como GitHub, AWS, Slack, SendGrid, Stripe e GCP, mas ignora parâmetros de conexão com o banco de dados, chaves de acesso à API do Google e chaves privadas deixadas no código. Os parâmetros de conexão com o banco de dados e as chaves privadas não são bloqueados por padrão para evitar falsos positivos. As chaves de acesso à API do Google não são bloqueadas porque possuem o prefixo AIzaSy, semelhante às chaves públicas do Google Maps destinadas à integração em páginas da web.
Em relação às credenciais descobertas que se revelaram inválidas, a maioria delas eram tokens de acesso e chaves associadas a serviços que oferecem um mecanismo de revogação. Por exemplo, apenas um token válido foi encontrado entre 101886 tokens do NPM (0.001%), 260 entre 73048 tokens do GitHub (0.35%) e 15 entre 30437 tokens do Hugging Face (0.05%). A taxa de sobrevivência para chaves do Stripe foi de 4%, AWS — 8%, GCP — 8%, Slack — 2% e GitLab — 0.64%. Para efeito de comparação, de 12985 parâmetros de conexão detectados para o SGBD PostgreSQL, 11465 (88%) permaneceram ativos; de 2421 parâmetros de conexão para o MySQL, 1806 (74%); de 126963 contas de serviço do Google Cloud, 69041 (54%); de 3790 tokens para o Docker Hub, 1244 (33%); e de 22800 chaves para o SendGrid, 9189 (40%).
Anteriormente, pesquisadores examinaram aproximadamente 7.5 PB de dados de treinamento de IA distribuídos pela Hugging Face e encontraram 221 credenciais válidas.
Fonte: opennet.ru
