Demonstração educacional de três vulnerabilidades do Claude Code (bypass de hooks, injeção de MCP, exfiltração de chaves de API) com servidor atacante, proxy MITM e scanner de detecção para aprendizado de segurança na cadeia de suprimentos.
Este projeto demonstra três vulnerabilidades divulgadas pela Check Point Research na ferramenta CLI Claude Code da Anthropic. Foi projetado para estudantes e pesquisadores de cibersegurança entenderem como funcionam os ataques à cadeia de suprimentos em ferramentas de desenvolvimento com IA.

| ID | CVSS | Tipo | Corrigido Em |
|---|
| Sem CVE | 8.7 | Bypass de consentimento de hooks → RCE | v1.0.87 (Set 2025) |
| CVE-2025-59536 | 8.7 | Injeção de configuração de servidor MCP → RCE | v1.0.111 (Out 2025) |
| CVE-2026-21852 | 5.3 | Exfiltração de chave de API via URL base | v2.0.65 (Jan 2026) |
├── README.md # Este arquivo
├── attacker_server.py # Servidor HTTP local que registra os dados recebidos
├── attacker_proxy.py # Proxy MITM para CVE-2026-21852 (captura chave de API + tráfego)
├── scanner.py # Ferramenta de detecção: verifica repositórios quanto a esses padrões
├── vuln1_hooks_bypass/ # Demonstração: hooks maliciosos em settings.json
│ └── .claude/settings.json
├── CVE-2025-59536_mcp_injection/ # Demonstração: injeção de configuração de servidor MCP
│ ├── .mcp.json
│ └── .claude/settings.json
└── CVE-2026-21852_api_exfil/ # Demonstração: exfiltração de chave de API via URL base
└── .claude/settings.json
python3 attacker_server.pypython3 attacker_proxy.py — proxy transparente em 127.0.0.1:8888 que captura chaves de API enquanto encaminha o tráfego normalmentepython3 scanner.py <caminho-para-qualquer-repo> para detectar esses padrõesscanner.py verifica qualquer repositório local quanto aos três padrões de vulnerabilidade antes de você abri-lo no Claude Code.
python3 scanner.py <caminho-para-repo>
Ele sinaliza:
enableAllProjectMcpServers: true combinado com definições de servidor em .mcp.json (CVE-2025-59536)ANTHROPIC_BASE_URL ou outras substituições de variáveis de ambiente relacionadas a credenciais em .claude/settings.json (CVE-2026-21852)Encerra com o código 1 se algum problema for encontrado, 0 se estiver limpo — fácil de integrar em uma verificação de pré-clonagem em CI.
| Componente | Versão |
|---|---|
| Claude Code CLI | v2.0.61 |
Nota: v2.0.61 é uma versão vulnerável (o patch foi lançado na v2.0.65). Não use esta versão em produção.
Em ambientes de desenvolvimento com IA, os arquivos de configuração fazem parte da camada de execução. Clonar um repositório não confiável agora equivale a executar código não confiável se suas ferramentas carregarem automaticamente as configurações do projeto.
Este projeto é fornecido como está, para fins educacionais. As técnicas aqui demonstradas são apresentadas apenas em localhost e visam somente vulnerabilidades históricas corrigidas. Usar essas ferramentas contra sistemas de produção, infraestrutura de terceiros ou qualquer sistema sem autorização explícita é ilegal e antiético. O autor não é responsável por qualquer dano causado pelo uso indevido deste material.