
shannon v2.3.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 é um pentester autônomo de IA para aplicações web e APIs.
Ele analisa seu código-fonte, identifica caminhos de ataque e executa explorações reais para comprovar 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 llms.txt para um mapa conciso deste repositório, ou use llms-full.txt para o README e a documentação combinados em um único arquivo.
Índice
- 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
- Perguntas Frequentes
O que é o Shannon?
Shannon é um pentester autônomo de IA desenvolvido pela Keygraph. Ele realiza testes de segurança em aplicações web e suas APIs subjacentes, combinando análise de código-fonte com exploração ao vivo.
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 explorações reais contra a aplicação em execução e suas APIs. Somente vulnerabilidades com uma prova de conceito funcional são incluídas no relatório final.
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, 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 produção sem saber.
Shannon fecha essa lacuna fornecendo testes de penetração automatizados sob demanda, que podem ser executados contra 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 | 20+ vulnerabilidades, incluindo bypass de autenticação, injeção de SQL, IDOR e SSRF. | Ver relatório |
| c{api}tal API | Aproximadamente 15 achados de API de severidade crítica e alta, incluindo injeção de comandos, bypass de autenticação e mass assignment. | Ver relatório |
| OWASP crAPI | 15+ achados de severidade crítica e alta em caminhos de JWT, injeção, SSRF e autorização de API. | Ver relatório |
Início Rápido
Pré-requisitos
- Docker: necessário para o contêiner de trabalho.
- Node.js 18+: necessário para o fluxo de trabalho recomendado com
npx. - Credenciais do provedor de IA: Shannon roda em Anthropic, OpenAI, xAI, AWS Bedrock, qualquer outro provedor no catálogo do harness, e qualquer endpoint que fale a Anthropic Messages API ou a OpenAI Chat Completions ou Responses API por meio de uma URL base personalizada. Você traz sua própria chave, e a Keygraph nunca faz proxy do tráfego do seu modelo. Shannon é agnóstico em relação ao provedor. Consulte Provedores de IA para IDs de modelos sugeridos.
- Salvaguardas cibernéticas liberadas com 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. Complete as orientações deles para testadores de segurança legítimos antes da sua primeira execução - consulte Provedores de IA.
Executar o Shannon
[!WARNING] Shannon executa explorações ativamente. Execute-o apenas contra aplicações e ambientes que você possui ou para os quais tem autorização escrita explícita para testar. Não execute o Shannon contra sistemas de produção.```bash
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
Shannon extrai a imagem do worker do Docker Hub, inicia a infraestrutura local necessária, monta o repositório alvo somente leitura dentro de um contêiner worker efêmero e grava os resultados em um workspace local.
Para builds a partir do código-fonte, varreduras autenticadas, configuração específica do provedor e notas de plataforma, consulte [Documentação](#documentation).
> [!TIP]
> **Prefere usar uma assinatura em vez de créditos de API?**
>
> - **OpenAI Codex:** A versão mais recente do Shannon suporta assinaturas ChatGPT Plus e Pro. Siga o [guia de configuração de assinatura do OpenAI Codex](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#openai-codex-chatgpt-pluspro-subscription) para começar.
> - **xAI (Grok):** A versão mais recente do Shannon suporta assinaturas xAI. Siga o [guia de configuração de assinatura do xAI](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#xai-grok-subscription) para começar.
> - **Claude Code:** A versão mais recente do Shannon não suporta assinaturas Claude Code. Siga o [guia de configuração de assinatura do Claude Code](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#claude-code-subscription) para usar a versão `1.9.0`, que é o lançamento final construído sobre o Claude Agent SDK.
## Principais Capacidades
- **Relatórios de prova por exploração**: Shannon relata achados validados com etapas reproduzíveis de prova de conceito, em vez de avisos especulativos.
- **Planejamento de ataque white-box**: Shannon usa análise de código-fonte para orientar testes dinâmicos e focar em caminhos de ataque realistas.
- **Execução autônoma**: Shannon lança 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 baseados em e-mail, áreas de foco e regras de engajamento.
- **Cobertura focada em OWASP**: Shannon visa problemas exploráveis de Injection, XSS, SSRF, Broken Authentication e Broken Authorization.
- **Workspaces retomáveis**: Shannon pode retomar execuções interrompidas sem reexecutar agentes concluídos.
- **Saída legível por máquina**: Shannon emite achados como JSON estruturado e, por padrão, como SARIF 2.1.0 em varreduras de modo exploit (desative com `report.sarif: "false"`). SARIF é o padrão OASIS para resultados de análise estática, então os achados fluem para qualquer serviço de varredura de código, plataforma de gerenciamento de vulnerabilidades, painel de segurança ou pipeline CI/CD que o leia.
- **Traga sua própria chave, agnóstico de provedor**: Shannon roda em Anthropic, OpenAI, xAI, AWS Bedrock e qualquer endpoint que fale a Anthropic Messages API ou a OpenAI Chat Completions ou Responses API, incluindo modelos auto-hospedados servidos por Ollama, vLLM ou LM Studio e gateways como OpenRouter e LiteLLM. Você fornece as credenciais, então o código-fonte e o tráfego do modelo permanecem dentro da sua infraestrutura. Modelos locais e auto-hospedados são tecnicamente suportados, mas não recomendados: eles podem não seguir as instruções do Shannon ou as restrições de uso de ferramentas de forma tão confiável quanto os modelos de fronteira, então siga esse caminho apenas se você souber como o modelo escolhido se comporta.
## Edições
O Shannon é distribuído de duas formas: **Shannon Open Source**, o pentester que você executa por conta própria, e a **plataforma Keygraph**, o produto comercial de pentest que executa o Shannon continuamente e fecha todo o ciclo de vida de AppSec ao redor dele.
**Shannon Open Source** (este repositório) é o pentester independente: um agente 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ê seu código-fonte, planeja ataques, executa explorações reais e relata apenas o que consegue provar. Ele roda sob demanda e é completo nesse escopo. Você o aponta para um alvo, ele faz o pentest, ele relata.
A **plataforma Keygraph** é o produto comercial de pentest contínuo e pronto para empresas, alimentado pelo Shannon. Na plataforma Keygraph, uma versão aprimorada do Shannon roda continuamente em um ambiente orquestrado e endurecido, alimentado pela stack completa de análise de código da Keygraph. Ao redor 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 afia os ataques do Shannon.
- **Provar**: pentests autônomos black-box e white-box cientes do 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 propriedade, status, rastreamento de SLA, painéis e sincronização bidirecional com 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 auto-hospedados e com air-gap, acesso estrito a modelos com bring-your-own-key e padrões de gateway LLM controlados pelo cliente, para que código-fonte, resultados e 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 oferece esse motor para você 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.
| Etapa do ciclo de vida de AppSec | Shannon Open Source | Plataforma Keygraph |
| --- | --- | --- |
| Analisar | Passagem básica de LLM do código-fonte para planejar ataques | Parsing real da base de código, além de Code Property Graph, SAST, SCA com alcançabilidade, segredos, IaC e contêineres |
| Pentest 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, propriedade, SLA, painéis, sincronização com Jira e relatórios PDF profissionais de nível pentest |
| Corrigir e verificar | Corrija manualmente a partir do relatório e reexecute a varredura completa para verificar | Correção automatizada: abre um PR com a correção, verificada por reteste pontual sem reexecutar a varredura completa |
| Implantar e operar | CLI local e worker Docker | Auto-hospedado, com air-gap, BYOK, contínuo, integrações empresariais |
| Licença e suporte | AGPL-3.0, comunidade | Comercial, com suporte |
Saiba mais no [site da Keygraph](https://keygraph.io), leia a [visão geral técnica da plataforma Keygraph](https://github.com/keygraphhq/shannon/blob/main/docs/keygraph-platform.md), inicie um teste gratuito ou agende uma [demonstração](https://cal.com/team/keygraph/shannon-pro), ou entre em contato com [[email protected]](mailto:[email protected]).
## Arquitetura
O Shannon usa um fluxo de trabalho multiagente que combina análise de código-fonte com exploração ao vivo:```text
┌──────────────────────┐
│ Pre-Reconnaissance │
│ (source code scan) │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ Reconnaissance │
│ (attack surface │
│ mapping) │
└──────────┬───────────┘
│
▼
┌──────────┴───────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Vuln │ │ Vuln │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Exploit │ │ Exploit │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
└──────┬───────┴─────────────┘
│
▼
┌──────────────────────┐
│ Reporting │
└──────────────────────┘
Em alto nível:
- Pré-reconhecimento identifica frameworks, pontos de entrada, fluxos de dados e superfícies de ataque prováveis a partir do repositório.
- Reconhecimento explora o aplicativo em execução e correlaciona o comportamento em tempo de execução com o contexto no nível 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 descobertas validadas, evidências e orientações de remediação em um relatório final em Markdown.
Cada varredura é executada em um contêiner Docker efêmero com um workspace isolado e orquestração por invocação.
Documentação
Use estes guias para detalhes operacionais:
| Guia | Use para |
|---|---|
| Build a partir do código-fonte e comandos 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órios. |
| Provedores de IA | Selecionar o modelo, os provedores suportados (Anthropic, OpenAI, xAI, AWS Bedrock e qualquer outro provedor suportado pela Pi) e gateways personalizados. |
| Plataformas e rede | Windows/WSL2, Linux, macOS, rede Docker, aplicativos locais e nomes de host personalizados. |
| Workspaces e retomada | Nomear workspaces, retomar varreduras interrompidas e armazenamento de workspaces. |
| Segurança e limitações | Requisitos de uso autorizado, orientações para ambientes não produtivos, efeitos mutativos, custo e ressalvas dos modelos. |
| Cobertura e roadmap | Cobertura atual de vulnerabilidades e trabalho planejado. |
| Plataforma Keygraph | A plataforma contínua de pentest agêntico: análise de código, testes black-box e white-box, gerenciamento de descobertas, remediação, verificação e implantação empresarial. |
Segurança, Escopo e Limitações
O Shannon não é um scanner passivo. Seus agentes de exploração podem criar usuários, enviar formulários, alterar o estado do aplicativo, disparar requisições de saída e, de outra forma, afetar o sistema alvo. Use ambientes de desenvolvimento em sandbox, de staging ou locais 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 aplicativos que você não possua ou para os quais não tenha 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. Cobertura mais ampla de análise estática, incluindo dependências vulneráveis e configurações inseguras, é fornecida pela plataforma Keygraph.
- As descobertas ainda exigem revisão humana. Relatórios gerados por LLM podem conter detalhes fracamente suportados ou incorretos.
- Anthropic, OpenAI, xAI e AWS Bedrock são provedores integrados, e qualquer endpoint da Anthropic Messages API ou da OpenAI Chat Completions ou Responses API funciona por meio de uma URL base personalizada. A capacidade do modelo varia, e um modelo que não segue as instruções do Shannon ou as restrições de uso de ferramentas de forma confiável produzirá resultados mais fracos.
- Uma execução completa pode levar aproximadamente 1 a 1,5 horas e pode incorrer em custos de API LLM dependendo do preço do modelo e da complexidade do aplicativo.
- Não faça varreduras em bases de código não confiáveis ou adversariais. Ferramentas com tecnologia de IA que leem código-fonte podem estar expostas a injeção de prompt.
Leia o guia completo de 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.
Licenciamento comercial e empresarial está disponível para organizações que precisam de termos de licença diferentes, suporte comercial, redistribuição privada, uso de 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
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 do AppSec e executa uma versão aprimorada do Shannon como seu motor de pentest.
Comunidade e Suporte
Horário de atendimento da comunidade está disponível 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
Junte-se ao 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:
Perguntas Frequentes
Posso hospedar o Shannon por conta própria?
Sim. O Shannon Open Source é executado inteiramente em sua própria infraestrutura em um contêiner Docker efêmero. Seu código-fonte é montado somente leitura e nunca sai do seu ambiente.
O Shannon suporta trazer sua própria chave (BYOK)?
Sim, sempre. Você fornece as credenciais de LLM que o Shannon usa para executar um pentest, em todas as implantações, open source e comerciais. A Keygraph nunca faz proxy do tráfego do seu modelo.
O Shannon gera SARIF?
Sim. O Shannon emite SARIF 2.1.0, o formato padrão OASIS para resultados de análise estática, juntamente com JSON estruturado. Qualquer consumidor de SARIF pode lê-lo: serviços de varredura de código, plataformas de gerenciamento de vulnerabilidades, painéis de segurança e pipelines de CI/CD. Ele é gravado por padrão em varreduras no modo de exploração; defina report.sarif como "false" no seu arquivo de configuração para optar por não usá-lo.
Quais provedores de IA o Shannon suporta?
Anthropic, OpenAI, xAI e AWS Bedrock são integrados e configurados diretamente pelo ID do provedor. Além desses, o Shannon é executado em qualquer endpoint que implemente a Anthropic Messages API ou a OpenAI Chat Completions ou Responses API, acessado por meio de uma URL base personalizada. A regra é o formato da API, não o fornecedor. O Shannon usa uma única configuração unificada de modelo durante todo o pentest.
Posso executar o Shannon em um modelo local ou auto-hospedado?
Tecnicamente sim, mas não é recomendado. O Shannon funciona com modelos locais servidos por meio de Ollama, vLLM ou LM Studio, que expõem um endpoint compatível com OpenAI, bem como roteadores como OpenRouter e gateways como LiteLLM. Aponte o Shannon para o endpoint com uma URL base personalizada. A capacidade varia, e um modelo que não segue as instruções do Shannon ou as restrições de uso de ferramentas de forma confiável produzirá pentests mais fracos do que um modelo de fronteira, então siga esse caminho apenas se você souber como o modelo escolhido se comporta. Consulte Provedores de IA.
O Shannon realmente explora vulnerabilidades, ou apenas faz varreduras?
O Shannon executa explorações reais. Ele relata uma descoberta somente quando produz uma prova de conceito funcional e descarta hipóteses que não pode comprovar. É um pentester, não um scanner.
Construído por Keygraph

