
shannon v2.5.0
Shannon é um pentester de IA autônomo de caixa branca para aplicações web e APIs. Ele analisa seu código-fonte, identifica vetores de ataque e executa exploits reais para comprovar vulnerabilidades antes que elas cheguem à produção.
Shannon - Pentester de IA da Keygraph
O Shannon é um pentester autônomo de IA para aplicações web e APIs.
Ele analisa o seu código-fonte, identifica caminhos de ataque e executa exploits reais para provar vulnerabilidades antes que elas cheguem à produção.
Este repositório é o Shannon Open Source: o agente completo, executado localmente a partir da sua linha de comando.
[!TIP] Agentes de IA e LLMs: comece com o llms.txt para obter um mapa conciso deste repositório ou use o llms-full.txt para o README e a documentação combinados em um único arquivo.
Sumário
- O que é o Shannon?
- Shannon em Ação
- Início Rápido
- Principais Capacidades
- Edições
- Arquitetura
- Documentação
- Segurança, Escopo e Limitações
- Licença
- Sobre a Keygraph
- Comunidade e Suporte
O que é o Shannon?
O Shannon é um pentester autônomo de IA desenvolvido pela Keygraph. Ele realiza testes de segurança em aplicações web e nas suas APIs subjacentes, combinando análise de código-fonte com exploração ao vivo.
O Shannon analisa o código-fonte da sua aplicação web para identificar possíveis vetores de ataque e, em seguida, usa automação de navegador e ferramentas de linha de comando para executar exploits reais contra a aplicação em execução e as suas APIs. Somente vulnerabilidades com uma prova de conceito funcional são incluídas no relatório final.
O Shannon é o agente. Este repositório é o Shannon Open Source, o pentester independente que você mesmo executa. O mesmo Shannon também alimenta a plataforma Keygraph, o produto comercial de pentest da Keygraph. Consulte Edições para ver como os dois se comparam.
Por que o Shannon Existe
Graças a ferramentas como Claude Code e Cursor, a sua equipe entrega código sem parar. Mas o seu teste de penetração? Isso acontece uma vez por ano. Isso cria uma enorme lacuna de segurança. Nos outros 364 dias, você pode estar enviando vulnerabilidades para a produção sem saber.
O Shannon fecha essa lacuna ao fornecer testes de penetração automatizados e sob demanda, que podem ser executados em cada build ou release.
Shannon em Ação
Exemplos de relatórios de testes de penetração de aplicações intencionalmente vulneráveis, produzidos pelo Shannon Open Source:
| Alvo | Resumo | Relatório |
|---|---|---|
| OWASP Juice Shop | Mais de 20 vulnerabilidades, incluindo bypass de autenticação, injeção de SQL, IDOR e SSRF. | Ver relatório |
| c{api}tal API | Aproximadamente 15 achados críticos e de alta severidade na API, incluindo injeção de comandos, bypass de autenticação e mass assignment. | Ver relatório |
| OWASP crAPI | Mais de 15 achados críticos e de alta severidade em JWT, injeção, SSRF e caminhos de autorização da API. | Ver relatório |
Início Rápido
Pré-requisitos
- Docker: necessário para o contêiner do worker.
- Node.js 18+: necessário para o fluxo de trabalho recomendado com
npx. - Credenciais do provedor de IA: Anthropic, OpenAI, xAI ou AWS Bedrock - ou qualquer outro provedor. Os modelos Claude são recomendados. Para IDs de modelos sugeridos por provedor, além de gateways e URLs base personalizadas, consulte Provedores de IA.
- Salvaguardas de segurança cibernética aprovadas pelo seu provedor: Anthropic e OpenAI aplicam salvaguardas em tempo real a cargas de trabalho de segurança cibernética, que podem interromper um scan no meio da execução. Conclua as orientações delas para testadores de segurança legítimos antes da sua primeira execução - consulte Provedores de IA.
Executar o Shannon
[!WARNING] O Shannon executa exploits ativamente. Execute-o somente contra aplicações e ambientes que você possui ou para os quais tem autorização explícita por escrito para testar. Não execute o Shannon contra sistemas de produção.
# Configure credentials with the interactive wizard.
npx @keygraph/shannon setup
# Run a pentest against a source-available target.
npx @keygraph/shannon start -u https://your-app.com -r /path/to/your-repo
O Shannon baixa a imagem do worker do Docker Hub, inicia a infraestrutura local necessária, monta o repositório alvo em modo somente leitura dentro de um contêiner de worker efêmero e grava os resultados em um workspace local.
Para builds a partir do código-fonte, scans autenticados, configuração específica de provedores e notas de plataforma, consulte Documentação.
[!TIP] Prefere usar uma assinatura em vez de créditos de API?
- OpenAI Codex: a versão mais recente do Shannon suporta assinaturas do ChatGPT Plus e Pro. Siga o guia de configuração de assinatura do OpenAI Codex para começar.
- Claude Code: a versão mais recente do Shannon não suporta assinaturas do Claude Code. Siga o guia de configuração de assinatura do Claude Code para usar a versão
1.9.0, que é o release final construído sobre o Claude Agent SDK.
Principais Capacidades
- Relatórios com prova por exploração: o Shannon reporta achados validados com etapas reproduzíveis de prova de conceito, em vez de alertas especulativos.
- Planejamento de ataque white-box: o Shannon usa a análise de código-fonte para orientar testes dinâmicos e focar em caminhos de ataque realistas.
- Execução autônoma: o Shannon inicia reconhecimento, análise de vulnerabilidades, exploração e geração de relatórios a partir de um único comando.
- Testes autenticados: arquivos de configuração podem descrever fluxos de login, credenciais de teste, TOTP, fluxos de login por e-mail, áreas de foco e regras de engajamento.
- Cobertura focada no OWASP: o Shannon tem como alvo problemas exploráveis de Injection, XSS, SSRF, Broken Authentication e Broken Authorization.
- Workspaces retomáveis: o Shannon pode retomar execuções interrompidas sem reexecutar os agentes já concluídos.
Edições
O Shannon é distribuído de duas formas: o Shannon Open Source, o pentester que você mesmo executa, e a plataforma Keygraph, o produto comercial de pentest que executa o Shannon continuamente e fecha todo o ciclo de vida de AppSec ao seu redor.
O Shannon Open Source (este repositório) é o pentester independente: um agente de CLI para testes white-box com prova por exploração de aplicações web e APIs que você possui ou está autorizado a testar. Ele lê o seu código-fonte, planeja ataques, executa exploits reais e reporta apenas o que consegue provar. Ele é executado sob demanda e é completo nesse segmento. Você o aponta para um alvo, ele faz o pentest e gera o relatório.
A plataforma Keygraph é o produto de pentest contínuo, pronto para empresas, alimentado pelo Shannon. Na plataforma Keygraph, uma versão aprimorada do Shannon é executada continuamente em um ambiente reforçado e orquestrado, alimentado pela stack completa de análise de código da Keygraph. Em torno desse motor, a plataforma fecha todo o ciclo de vida de vulnerabilidades, da análise à correção verificada:
- Analisar: SAST com Code Property Graph, SCA com alcançabilidade, segredos, IaC e varredura de contêineres. Detecção de primeira classe por direito próprio e contexto que aprimora os ataques do Shannon.
- Provar: pentests autônomos black-box e white-box que consideram o código-fonte transformam achados candidatos em vulnerabilidades comprovadas e exploradas, em vez de alertas especulativos.
- Gerenciar: um registro canônico por vulnerabilidade por repositório, deduplicado em todas as fontes, com proprietário, status, acompanhamento de SLA, dashboards e sincronização bidirecional com o Jira.
- Corrigir e verificar: correções escritas automaticamente e retestadas contra o código corrigido antes da entrega, chegando ao seu fluxo de revisão existente em vez de serem aplicadas automaticamente.
- Implantar: ambientes self-hosted e air-gapped, acesso estrito a modelos com bring-your-own-key e padrões de gateway de LLM controlados pelo cliente, para que o código-fonte, os resultados e o tráfego de modelos permaneçam dentro do seu perímetro.
O Shannon é o motor de prova no centro da plataforma Keygraph. O Shannon Open Source dá a você esse motor para executar por conta própria. A plataforma Keygraph envolve o Shannon com análise contínua, gerenciamento de achados, correção, verificação e implantação empresarial.
| Estágio do ciclo de vida de AppSec | Shannon Open Source | Plataforma Keygraph |
|---|---|---|
| Analisar | Pass-through básico de LLM do código-fonte para planejar ataques | Parse real da base de código, além de Code Property Graph, SAST, SCA com alcançabilidade, segredos, IaC e contêineres |
| Testar e provar | Somente white-box, prova por exploração | White-box aprimorado, além de modos black-box e grey-box, executados continuamente |
| Gerenciar achados | Relatório Markdown local | Sistema canônico de achados: deduplicação entre fontes, proprietário, SLA, dashboards, sincronização com Jira e relatórios PDF profissionais com padrão de pentest |
| Corrigir e verificar | Corrija manualmente a partir do relatório e reexecute o scan completo para verificar | Correção automatizada: abre um PR com a correção, verificada por reteste pontual sem reexecutar o scan completo |
| Implantar e operar | CLI local e worker Docker | Self-hosted, air-gapped, BYOK, contínuo, integrações empresariais |
| Licença e suporte | AGPL-3.0, comunidade | Comercial, com suporte |
Saiba mais no site da Keygraph, leia a visão geral técnica da plataforma Keygraph, inicie um teste gratuito ou agende uma demo, ou entre em contato com [email protected].
Arquitetura
O Shannon usa um fluxo de trabalho multiagente que combina análise de código-fonte com exploração ao vivo:
┌──────────────────────┐
│ Pre-Reconnaissance │
│ (source code scan) │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ Reconnaissance │
│ (attack surface │
│ mapping) │
└──────────┬───────────┘
│
▼
┌──────────┴───────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Vuln │ │ Vuln │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Exploit │ │ Exploit │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
└──────┬───────┴─────────────┘
│
▼
┌──────────────────────┐
│ Reporting │
└──────────────────────┘
Em linhas gerais:
- Pré-reconhecimento identifica frameworks, pontos de entrada, fluxos de dados e prováveis superfícies de ataque a partir do repositório.
- Reconhecimento explora a aplicação em execução e correlaciona o comportamento em tempo de execução com o contexto do código.
- Análise de vulnerabilidades executa agentes especializados para Injection, XSS, SSRF, Authentication e Authorization.
- Exploração tenta ataques reais de prova de conceito e descarta hipóteses que não podem ser comprovadas.
- Relatórios compila achados validados, evidências e orientações de correção em um relatório final em Markdown.
Cada scan é executado em um contêiner Docker efêmero, com um workspace isolado e orquestração por invocação.
Documentação
Use estes guias para obter detalhes operacionais:
| Guia | Use para |
|---|---|
| Build a partir do código-fonte e comandos de CLI | Clonar, compilar, comandos comuns, caminhos de saída e desenvolvimento local. |
| Configuração | Testes autenticados, fluxos de login, regras de engajamento e filtros de relatório. |
| Provedores de IA | Selecionar o modelo, os provedores suportados (Anthropic, OpenAI, xAI, AWS Bedrock e qualquer outro provedor suportado por Pi) e gateways personalizados. |
| Plataformas e rede | Windows/WSL2, Linux, macOS, rede Docker, aplicativos locais e hostnames personalizados. |
| Workspaces e retomada | Nomear workspaces, retomar scans interrompidos e armazenamento de workspaces. |
| Segurança e limitações | Requisitos de uso autorizado, orientações para ambientes que não sejam de produção, efeitos mutáveis, custo e ressalvas dos modelos. |
| Cobertura e roadmap | Cobertura atual de vulnerabilidades e trabalho planejado. |
| Plataforma Keygraph | A plataforma de pentest agêntica e contínua: análise de código, testes black-box e white-box, gerenciamento de achados, correção, verificação e implantação empresarial. |
Segurança, Escopo e Limitações
O Shannon não é um scanner passivo. Os agentes de exploração dele podem criar usuários, enviar formulários, alterar o estado da aplicação, disparar requisições de saída e, de outras formas, afetar o sistema alvo. Use ambientes de sandbox, de staging ou de desenvolvimento local com dados descartáveis.
Você é responsável por usar o Shannon de forma legal e ética. Não aponte o Shannon para sistemas, repositórios ou aplicações que você não possui ou para os quais não tem autorização explícita para testar.
Limitações importantes:
- O Shannon Open Source foca em problemas ativamente exploráveis, como Injection, XSS, SSRF, Broken Authentication e Broken Authorization. Uma cobertura mais ampla de análise estática, incluindo dependências vulneráveis e configurações inseguras, é fornecida pela plataforma Keygraph.
- Os achados ainda exigem revisão humana. Relatórios gerados por LLM podem conter detalhes mal fundamentados ou incorretos.
- O Shannon é oficialmente suportado com modelos Claude. Modelos menores, alternativos ou não-Claude acessados via proxy podem ser incompletos ou instáveis.
- Uma execução completa pode levar de 1 a 1,5 horas e pode incorrer em custos de API de LLM, dependendo do preço do modelo e da complexidade da aplicação.
- Não faça scan de codebases não confiáveis ou adversários. Ferramentas alimentadas por IA que leem código-fonte podem estar expostas a prompt injection.
Leia o guia completo Segurança e limitações antes de executar o Shannon em um novo ambiente.
Licença
O Shannon Open Source é licenciado sob a GNU Affero General Public License v3.0.
O licenciamento comercial e empresarial está disponível para organizações que precisam de termos de licença diferentes, suporte comercial, redistribuição privada, uso como serviço gerenciado ou opções de implantação mais amplas, incluindo a plataforma Keygraph.
Para licenciamento comercial, entre em contato com [email protected].
Sobre a Keygraph
A Keygraph é a empresa por trás do Shannon. Ela também desenvolve a plataforma Keygraph, o produto comercial de pentest agêntico que fecha todo o ciclo de vida de AppSec e executa uma versão aprimorada do Shannon como seu motor de pentest.
Comunidade e Suporte
Horários de atendimento da comunidade estão disponíveis para ajuda prática com bugs, implantações e dúvidas de configuração.
- EUA/Europa: quinta-feira, 10:00 AM PT
- Ásia: quinta-feira, 2:00 PM IST
- Agende um horário
Entre no Discord para fazer perguntas, compartilhar feedback e se conectar com outros usuários do Shannon.
Neste momento, a Keygraph não está aceitando contribuições externas de código. Issues são bem-vindas para relatórios de bugs e solicitações de recursos:
Mantenha-se conectado:
Desenvolvido pela Keygraph