Mercados
S&P 5007.377▲ 0,31%Nasdaq24.579▲ 1,09%Dow Jones51.286▼ 0,46%Ibovespa168.498▲ 1,39%FTSE 10010.674▼ 1,01%DAX25.820▼ 1,92%Nikkei57.435▼ 5,96%DólarR$ 5,50▼ 0,14%EuroR$ 6,13▼ 0,67%BitcoinR$ 416.601▼ 0,06%Powered by WIREDESK OSS&P 5007.377▲ 0,31%Nasdaq24.579▲ 1,09%Dow Jones51.286▼ 0,46%Ibovespa168.498▲ 1,39%FTSE 10010.674▼ 1,01%DAX25.820▼ 1,92%Nikkei57.435▼ 5,96%DólarR$ 5,50▼ 0,14%EuroR$ 6,13▼ 0,67%BitcoinR$ 416.601▼ 0,06%Powered by WIREDESK OS
Powered by WIREDESK OS
Cibersegurança

Falha no Claude Code vaza 2.539 senhas em 1.994 projetos GitHub

Ferramenta de IA Claude Code, da Anthropic, salvou senhas e chaves em arquivo de projeto que acabou commitado em massa no GitHub. 63 organizações foram afetadas.

Falha no Claude Code vaza 2.539 senhas em 1.994 projetos GitHub

Segurança Digital

Vazamento expõe milhares de senhas em projetos públicos, afetando dezenas de organizações no GitHub.

Leia também: Google derruba botnet com 1,3 milhão de set-top boxes Android

O assistente de codificação Claude Code, da Anthropic, vem expondo senhas, tokens e chaves de API em repositórios públicos no GitHub ao salvar comandos aprovados por desenvolvedores em um arquivo de configuração do projeto, o que já deixou 2.539 credenciais acessíveis em 1.994 repositórios, segundo pesquisa da empresa de segurança Apiiro.

Arquivo de configuração vira vazamento de segredos

O problema está no arquivo .claude/settings.local.json, criado dentro do projeto quando o usuário aprova comandos do Claude Code usando a opção “Yes, and don’t ask again”. Nessa situação, “quando o usuário seleciona ‘Yes, and don’t ask again’, o Claude Code salva o comando aprovado, incluindo senhas, em um arquivo local do projeto”, explica a Apiiro.

Esse arquivo registra exatamente o comando autorizado, em texto plano. Se o desenvolvedor digitou uma senha, token ou chave diretamente na linha de comando, esse segredo fica gravado ali. A Apiiro identificou 104.185 cópias do arquivo em 103.617 repositórios públicos; 1,1% delas, ou 1.122 arquivos, continham ao menos um segredo, somando 1.379 segredos únicos.

O Claude Code tenta evitar que esse arquivo entre no controle de versão ao adicioná-lo ao git exclude global do usuário. Mas “a proteção do arquivo fica restrita ao git exclude global do usuário, não ao .gitignore do projeto, permitindo commits acidentais”, afirma a Apiiro. Isso significa que nada impede outro colaborador — ou até o próprio assistente — de cometer o arquivo para o repositório.

Que credenciais foram expostas

Entre os 1.379 segredos únicos encontrados, a Apiiro destaca que “mais de um terço dos segredos abrem acesso direto a bancos de dados, incluindo 379 senhas”. Também foram identificados 43 logins SSH para servidores públicos, 42 tokens de acesso a serviços como GitHub, GitLab e npm e 23 chaves AWS.

No total, considerando versões antigas do arquivo, cópias em forks e um segundo arquivo compartilhado de configuração (.claude/settings.json), a pesquisa aponta 2.539 credenciais expostas em 1.994 repositórios públicos. Só o arquivo compartilhado aparece com segredos em 298 das 76.011 cópias analisadas.

Alguns casos são especialmente graves, incluindo a chave administrativa de nuvem de um fornecedor de banco de dados e a senha do proprietário de um banco de registros médicos, ambos ainda presentes em repositórios públicos. Os arquivos com segredos estão na branch padrão e, em metade dos projetos afetados, permanecem acessíveis há pelo menos 217 dias. Além disso, 211 forks de 74 repositórios carregam as mesmas credenciais, espalhando ainda mais o risco.

Impacto para empresas e cadeia de desenvolvimento

As credenciais expostas pertencem a 63 organizações, em sua maioria empresas de software de vários portes. A consequência prática é que qualquer pessoa que encontre esses repositórios pode tentar usar as senhas e chaves para acessar bancos de dados, servidores, repositórios de código e infraestruturas em nuvem das vítimas.

Em cenários extremos, isso abre caminho para invasão de sistemas, roubo ou sequestro de dados, interrupção de serviços e danos financeiros e de reputação. Como muitas chaves ainda estão ativas e na branch principal, a janela de ataque permanece aberta até que as empresas afetadas troquem todas as credenciais e limpem seus repositórios.

O problema também afeta a segurança da cadeia de desenvolvimento. Os arquivos podem aparecer não só no próprio repositório, mas em pacotes npm, imagens Docker, arquivos zip e pastas sincronizadas, aumentando a superfície de exposição. Mesmo cópias locais que nunca chegam ao GitHub são um alvo em potencial, já que o arquivo é um JSON em texto plano que pode ser vasculhado por malware em máquinas de desenvolvedores.

Scanners falham e IA se torna novo vetor

A Apiiro testou ferramentas populares de varredura de segredos, como gitleaks e TruffleHog, em todos os arquivos encontrados e concluiu que “scanners comuns como gitleaks e TruffleHog não detectam muitos desses segredos, especialmente senhas embutidas em comandos”. Em muitos casos, a senha aparece como um texto simples após parâmetros como PGPASSWORD=, sshpass -p ou mysql -p, parecendo apenas mais um comando de terminal para os detectores.

Segundo a pesquisa, gitleaks marcou pouco mais da metade dos arquivos com segredos e o TruffleHog identificou ainda menos; 215 arquivos com credenciais válidas não foram apontados por nenhum dos dois. Isso torna o vazamento silencioso e mais difícil de ser identificado por processos automáticos já em uso em empresas.

A Apiiro também comparou o comportamento de 16 agentes de codificação disponíveis no mercado e concluiu que “Claude Code é o único entre 16 agentes de codificação que salva o comando completo aprovado em arquivo de projeto por padrão”. Essa decisão de design, aliada à ausência de proteção forte contra commit do arquivo, é apontada como o fator central da falha.

O que as empresas e desenvolvedores devem fazer agora

Diante do cenário, a recomendação da Apiiro é clara: antes de qualquer limpeza de código, é preciso trocar todas as credenciais já expostas. A orientação é rotacionar imediatamente senhas de banco de dados, chaves de nuvem, tokens de acesso e logins SSH que tenham aparecido em qualquer cópia dos arquivos .claude/settings.local.json e .claude/settings.json.

Depois da rotação, as equipes devem remover esses arquivos dos repositórios atuais, revisar o histórico do git para apagar versões antigas com segredos e limpar forks e clones internos sempre que possível. Em paralelo, é recomendável reforçar o .gitignore dos projetos para bloquear arquivos da pasta .claude e ajustar políticas internas de uso de assistentes de codificação.

Para times de segurança, a Apiiro defende a atualização dos pipelines de varredura para contemplar esse novo padrão de exposição: analisar comandos salvos, não só formatos de chaves conhecidos, e priorizar a busca por arquivos de configuração de agentes de IA. Ferramentas corporativas de gestão de segredos também precisam considerar esse tipo de fonte.

Pressão sobre a Anthropic e próximos passos

Com 63 organizações já identificadas como afetadas e milhares de arquivos expostos há meses, a Anthropic passa a ser cobrada por uma correção estrutural no Claude Code. Na prática, a empresa é pressionada a impedir que comandos com segredos sejam gravados em arquivos de projeto ou, no mínimo, a reforçar a proteção para que esses arquivos nunca sejam commitados nem distribuídos junto com o código.

Pesquisadores e equipes técnicas envolvidas na análise defendem também mudanças mais amplas na forma como assistentes de codificação lidam com credenciais, além de maior transparência sobre o que é salvo localmente e como esses dados podem vazar. Enquanto a falha não for corrigida na ferramenta e os repositórios não forem saneados, a exposição das senhas e chaves geradas pelo Claude Code continua ativa no GitHub e em outros artefatos de desenvolvimento.