Voltar ao início do blog

Claude Code expos 1.379 segredos reais em configs publicas do GitHub

Claude Code expos 1.379 segredos reais em configs publicas do GitHub
Vulnerabilidade

Claude Code expôs segredos em configs do GitHub

Arquivo local gravou comandos com credenciais e foi parar em repositórios públicos.

Claude Code expos 1.379 segredos reais em configs publicas do GitHub

Resumo rapido

Pesquisa da Apiiro encontrou 1.122 cópias públicas do arquivo .claude/settings.local.json com pelo menos um segredo real. Foram identificados 1.379 segredos distintos, número que sobe para cerca de 2.539 ao incluir histórico, configurações compartilhadas e logs.

Neste artigo voce vai aprender:

  • O que foi exposto em repositórios públicos do GitHub
  • Por que o recurso "don’t ask again" pode gravar segredos
  • Quais tipos de credenciais apareceram no levantamento
  • Como procurar o arquivo e o histórico nos seus projetos
  • Quais ações tomar para reduzir o impacto

A pesquisa da Apiiro e o tamanho da exposição

O caso gira em torno do Claude Code, o assistente de programação da Anthropic. A pesquisa da Apiiro, publicada no início de novembro e repercutida por veículos especializados, localizou arquivos .claude/settings.local.json em repositórios públicos do GitHub com credenciais reais dentro. Foram 1.122 cópias públicas com pelo menos um segredo e 1.379 segredos distintos.

Somando histórico do Git, configurações compartilhadas e logs, o total estimado sobe para cerca de 2.539 segredos em 1.994 repositórios, atingindo aproximadamente 63 organizações. Não se trata de código morto ou dado de teste: aparecem senhas de banco, chaves AWS, tokens do GitHub, do GitLab e do npm, além de credenciais SSH.

Por que o "don’t ask again" grava credenciais em texto claro

O caminho é mais curto do que parece. Ao aprovar um comando shell no Claude Code e escolher a opção "Yes, and don’t ask again", a linha completa é salva no arquivo local de configurações. Se o comando carrega uma senha, um token ou uma chave de acesso, esse valor fica gravado em texto claro junto com o restante.

O estrago aparece no momento do commit. A proteção por git ignore global não impediu o envio do arquivo em vários cenários, sobretudo quando existem configurações diferentes entre máquinas, projetos e integrantes do time. Basta um desenvolvedor sem a regra aplicada para o arquivo entrar no repositório público.

Como identificar o risco nos seus repositórios

Times que adotaram agentes de IA no desenvolvimento precisam verificar se o arquivo já circulou por algum repositório, branch, fork ou histórico antigo. A varredura deve ir além da branch default, porque o segredo sobrevive em pontos que ninguém costuma olhar. Os sinais de alerta incluem:

  • Presença de .claude/settings.local.json dentro do repositório.
  • Comandos salvos com senhas de banco, chaves AWS, tokens GitHub, GitLab ou npm.
  • Credenciais SSH ou chaves privadas copiadas em comandos aprovados.
  • Arquivo removido do projeto atual, mas ainda presente no histórico do Git.
  • Logs ou configurações compartilhadas contendo comandos antigos.

Rotação de credenciais vem antes da limpeza

Comece procurando o arquivo em todos os repositórios. Se qualquer segredo aparecer, trate a credencial como comprometida desde o primeiro minuto. Apagar o arquivo não resolve, já que cópias podem existir em forks, branches e no histórico indexado por terceiros.

Com a rotação feita, remova o arquivo do controle de versão usando git rm --cached, adicione .claude/settings.local.json ao .gitignore do projeto e troque credenciais escritas em comandos por variáveis de ambiente ou cofres de segredos. Vale também revisar a política interna de uso de coding agents e incluir scanners de segredos no pipeline.

Checklist pratico

  1. Busque .claude/settings.local.json em todos os repositórios, incluindo branches e histórico.
  2. Rotacione qualquer senha, token, chave AWS, credencial SSH ou acesso de banco encontrado.
  3. Remova o arquivo do tracking, inclua no .gitignore do projeto e revise políticas de uso de agentes de IA.

Perguntas frequentes

O problema é exclusivo do Claude Code?

O levantamento analisou o Claude Code, mas o risco é estrutural. Qualquer assistente de programação que persista comandos aprovados com segredos inline pode gerar exposição parecida.

Apagar o arquivo resolve?

Não resolve sozinho. Se o arquivo já foi publicado, o segredo pode ter sido copiado, indexado ou preservado no histórico. A ordem correta é rotacionar a credencial e depois limpar o repositório.

Como evitar novos vazamentos?

Tire senhas e tokens de dentro dos comandos. Use variáveis de ambiente, cofres de segredos e regras claras para o uso de agentes de IA em projetos corporativos.

Proteja sua empresa com a LC SEC

A LC SEC ajuda sua equipe a revisar repositórios, políticas de uso de IA, exposição de segredos e controles de segurança para reduzir riscos antes que eles virem incidentes.

Conheca: Pentest, Threat Intelligence com IA, Conscientizacao de Seguranca, SGSI, Plano Diretor de Seguranca, Auditoria Interna, Governanca de MFA e Cofre TOTP, ISO 42001 - IA, Diagnostico Gratuito de Seguranca. lcsec.io

Fontes:
Apiiro

Compartilhe nas redes sociais:

Conteúdos relacionados

Alertas de cibersegurança direto no Telegram

Vazamentos, vulnerabilidades críticas e tendências — curadoria diária pela nossa equipe de threat intel. Entre no canal oficial e fique à frente das ameaças.

Entrar no canal