Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
aether — Framework de Análise de Segurança de Contratos Inteligentes e Geração de PoC com IA | Kitploit
Ferramentas/GitHubGitHub/l33tdawg/aether
Análise EstáticaFrameworks de ExploraçãoAnálise de VulnerabilidadesFuzzingCriptografiaTestes de PenetraçãoAnálise de BináriosAprendizado de MáquinaAprendizado e EducaçãoSegurança de IA
GitHubl33tdawg/aether

aether

6511há 3 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Framework de Análise de Segurança de Contratos Inteligentes e Geração de PoC com IA

Ver Repositório

Aether v6.0 — Estrutura de Análise de Segurança de Contratos Inteligentes

Version 6.0 | Novidades na v6.0 | Registo de Alterações

Aether é uma estrutura baseada em Python para analisar contratos inteligentes Solidity, gerar descobertas de vulnerabilidades, produzir testes de prova de conceito (PoC) baseados no Foundry e validar exploits em forks da mainnet. Ela combina análise de AST do Solidity, análise de mancha, análise de grafo de fluxo de controlo, análise entre contratos, execução simbólica Halmos, mais de 180 detectores estáticos baseados em padrões, um pipeline LLM multi-agente colaborativo (GPT/Gemini/Claude) com memória institucional partilhada SAGE, 14 arquétipos de protocolo, uma base de conhecimento de mais de 75 exploits, deteção calibrada por ML, deteção de peculiaridades de tokens, extração de invariantes, resolução de contexto de contratos relacionados e filtragem avançada baseada em contexto numa única TUI persistente em tela cheia.

Novidades na v6.0

Pipeline de Agentes Colaborativos — O pipeline de análise profunda transforma-se de 5 passagens independentes para 5 agentes colaborativos que partilham conhecimento estruturado através da memória institucional SAGE:

  • Memória de sessão partilhada — Cada passagem armazena descobertas, rejeições e proteções verificadas numa sessão SAGE por auditoria. Passagens posteriores recebem "Inteligência de Passagem Anterior" em vez de resumos de texto simples.
  • Rejeições como registos de primeira classe — Quando a Passagem 3 rejeita uma preocupação (por exemplo, "reentrancy protegida por modificador nonReentrant"), a Passagem 5 não a sinalizará novamente. Isto elimina diretamente a fonte nº1 de descobertas duplicadas.
  • Mecanismo de desafio — Passagens posteriores podem anular rejeições anteriores, mas devem fornecer NOVAS evidências. "A Passagem 3 não viu o caminho de callback através desta outra função" é válido. "Não concordo" não é.
  • Confirmação entre passagens — Quando múltiplas passagens confirmam independentemente uma descoberta, a confiança recebe um aumento de 15%. As descobertas confirmadas entre passagens são priorizadas nos relatórios.
  • SAGE necessário — A memória institucional é agora obrigatória, não opcional. Sem SAGE = sem auditoria. Execute docker compose up -d para iniciar.

Novidades na v5.0

Memória Institucional SAGE — Aether agora aprende com cada auditoria, reduzindo falsos positivos e melhorando a qualidade das descobertas ao longo do tempo:

  • Base de conhecimento pré-treinada — Vem com 170 memórias institucionais: 75 padrões de exploit, 63 listas de verificação de arquétipos de protocolo, 12 categorias de peculiaridades de tokens, 20 exploits históricos curados (DAO, Wormhole, Euler, Ronin, Curve e mais)
  • Integração no pipeline — SAGE recorda descobertas históricas e padrões de exploit na análise profunda Passagens 3 e 5; armazena aprendizados de auditoria pós-pipeline para recordação futura
  • Ciclo de feedback — Descobertas confirmadas são armazenadas como factos de alta confiança; descobertas rejeitadas (falsos positivos) são armazenadas para que auditorias futuras as evitem. Os resultados do AccuracyTracker alimentam automaticamente o SAGE
  • Pipeline de validação — Novo Estágio -1: a verificação de FP conhecidos do SAGE filtra descobertas que correspondem a padrões rejeitados anteriormente antes de qualquer outra validação ser executada
  • Sincronização de precisão do detetor — SageFeedbackManager.sync_detector_accuracy() identifica detetores de alto/baixo desempenho e armazena reflexões de recomendações/práticas a evitar
  • Auto-sementeira no arranque — O primeiro lançamento com o Docker do SAGE a executar auto-semeia a base de conhecimento pré-treinada. Ciente da versão: salta se já foi semeado.
  • Integração na TUI — Estado LIGADO/DESLIGADO do SAGE com contagem de memória exibida na CostBar
  • Implantação Docker — docker compose up -d inicia o SAGE; configurar através de sage_enabled/sage_url em ~/.aether/config.yaml
  • Degradação graciosa — A indisponibilidade do SAGE nunca quebra qualquer funcionalidade de auditoria

Contribuidores: Agradecimentos a @sashavdv por corrigir variáveis de caminho codificadas (PR #1) e a @pro258b por identificar o método validate_anthropic_key() em falta (PR #2).

Início Rápido do SAGE

SAGE é um sistema de memória institucional persistente alimentado por consenso BFT. Consulte o projeto SAGE para documentação completa.```bash

Install SAGE Python SDK

pip install sage-agent-sdk

Start SAGE (Docker required)

docker compose up -d

Run Aether — SAGE auto-seeds on first launch

python aether.py

Regenerate seed fixtures after updating knowledge bases (dev only)

python -c "from core.sage_seeder import SageSeeder; SageSeeder.generate_seed_fixtures()"

root@kitploit:~
### Como o SAGE Melhora as Auditorias```
Audit 1 → Findings + FPs → Record outcomes in SAGE
                                    ↓
Audit 2 → SAGE recalls FP patterns → Fewer false positives
                                    ↓
Audit 3 → Richer institutional context → Better severity calibration
                                    ↓
Audit N → Institutional expert-level knowledge → Bug-bounty-quality findings

Novidades na v4.7

Execução Automática de PoC — PoCs do Foundry geradas agora compilam e executam automaticamente:

  • Integração forge test --json executa PoCs imediatamente após a compilação
  • Análise de resultados JSON com a dataclass PoCTestResult para relatórios estruturados de sucesso/fracasso/erro
  • Suporte a modo fork para validação de exploits em mainnet contra estado ativo
  • Nova fase POC_TESTING no JobManager para acompanhamento ao vivo no TUI

Execução Simbólica Halmos — Verificação formal via execução simbólica:

  • HalmosRunner para executar testes simbólicos Halmos contra propriedades geradas
  • HalmosPropertyGenerator para geração automática de propriedades de verificação a partir de invariantes extraídos
  • Nó de pipeline HalmosSymbolicNode integrado na Etapa 1.95 de validação
  • Opções de configuração: enable_symbolic_verification, halmos_timeout
  • Degradação suave se Halmos não estiver instalado — ignora verificação simbólica sem erros

Análise de Grafo de Fluxo de Controle — Compreensão do fluxo de controle em nível de compilador:

  • Dataclasses BasicBlock, CFGEdge, ControlFlowGraph em solidity_ast.py
  • build_cfg(), get_dominators(), get_loop_headers(), format_cfg_for_llm() para análise estrutural
  • Parsing de blocos assembly via parse_assembly_block() para suporte a assembly inline
  • Propagação de taint ciente de ramificações no analisador de taint para análise sensível ao caminho
  • Contexto CFG injetado na Passagem 2 de análise aprofundada junto com dados de taint

Ciclo de Feedback de ML — Calibração baseada em resultados históricos:

  • AccuracyTracker.record_finding_outcome() para rastrear resultados de submissão e ganhos de recompensas
  • get_detector_accuracy() e get_detector_weights() para estatísticas de desempenho por detector
  • Dataclass DetectorStats rastreando verdadeiros/falsos positivos e precisão histórica
  • Ajuste de peso de confiança em EnhancedVulnerabilityDetector com base no histórico do detector
  • Calibração de severidade a partir de dados históricos injetada na Passagem 5 de análise aprofundada

Contexto de Contratos Relacionados — Análise LLM agora vê o código-fonte completo das dependências:

  • RelatedContractResolver descobre automaticamente contratos pai, interface, biblioteca e dependência
  • Modo projeto usa análise de relacionamento entre contratos; modo arquivo único analisa instruções import
  • Sistema de orçamento por passagem: 200K caracteres para passagens Gemini Flash, 100K para Claude, 50K para GPT
  • Bibliotecas padrão (@openzeppelin, solmate, solady) resumidas apenas para interface para economizar orçamento
  • Auditorias de arquivo único descobrem automaticamente arquivos .sol irmãos para contexto

Limpeza de Dívida Técnica — 8.500 linhas de código morto removidas:

  • Excluídos: ai_ensemble.py, audit_engine.py, fork_verifier.py
  • Removidas todas as referências a ai_ensemble da CLI, auditor runner, telas TUI, gerador de relatórios
  • Removido slither_project_cache do gerenciador de banco de dados
  • Removidos stubs de verificação formal do mecanismo de auditoria aprimorado

Novidades na v4.0

Parsing de AST Solidity — Aether v4.0 adiciona análise de código com suporte do compilador via py-solc-x, indo além da análise estática baseada apenas em regex:

  • Integração completa solc --ast-json para resolução adequada de herança, visibilidade de funções, layout de armazenamento com números de slots e rastreamento de leitura/gravação de variáveis de estado por função
  • Fallback elegante com regex quando a compilação falha (imports ausentes, versão incorreta do compilador)
  • Resumo estrutural AST alimentado automaticamente no pipeline LLM de análise aprofundada para melhor compreensão do protocolo

Mecanismo de Análise de Taint — Rastreia entradas controladas pelo usuário através de contratos para identificar fluxos de dados perigosos:

  • 8 tipos de fontes de taint: parâmetros de função, msg.sender, msg.value, calldata, retornos de chamada externa, block.timestamp, block.number, tx.origin
  • 12 tipos de sinks perigosos: delegatecall, selfdestruct, chamadas externas, transferências ETH, gravações de armazenamento, indexação de array, divisão por zero e mais
  • Detecção de sanitizadores: reconhece verificações de limites require, modificadores de controle de acesso, reverts condicionais, clamping Math.min/max, SafeCast
  • Rastreamento de taint entre contratos em múltiplos arquivos
  • Integrado ao pipeline de validação (Etapa 1.85) para corroboração/refutação de achados cientes de taint

Análise entre Contratos (Passagem 3.5) — Nova passagem de análise aprofundada voltada para vulnerabilidades multi-contrato:

  • Analisador de relacionamento entre contratos: detecta herança, chamadas de interface, delegatecall, staticcall, relacionamentos de variáveis de estado tipadas
  • Agrupamento Union-Find de contratos relacionados com detecção de limites de confiança
  • Passagem LLM dedicada analisando: violações de limites de confiança, consistência de estado entre contratos, reentrância entre contratos, conformidade de interface, interações de upgrade, escalonamento de privilégios
  • Contexto entre contratos também alimentado na Passagem 4 para consciência entre funções

Base de Dados de Peculiaridades de Tokens — 12 categorias de comportamentos ERC-20 não padrão que causam explorações reais:

Integrado ao pipeline de detecção estática e listas de verificação de arquétipos.

Mecanismo de Precisão Aprimorada — Detecção avançada de vulnerabilidades de arredondamento e precisão:

  • Detecção de inflação de participação / ataque ao primeiro depositante para vaults ERC-4626, pools de empréstimo, staking
  • Análise de direção de arredondamento — depósitos devem arredondar PARA BAIXO, saques devem arredondar PARA CIMA
  • Rastreamento de truncamento de divisão — captura variáveis de taxa truncadas posteriormente usadas em multiplicação
  • Detecção de exploração de resíduos (dust) — arredondamento para zero permite operações gratuitas
  • Overflow de acumulador — avaliação de risco de overflow em acumulador de recompensas

Geração de PoC Executável — Testes Foundry gerados agora realmente compilam e executam:

  • Biblioteca de mocks: MockERC20, MockOracle, MockWETH, MockFlashLoanProvider
  • Gerador inteligente de setUp(): extrai parâmetros de construtor, implanta mocks, lida com contratos atualizáveis, minta tokens, define aprovações
  • Número máximo de tentativas de compilação aumentado de 3 para 5
  • Prompts LLM incluem documentação da API de mock e setUp recomendado

Melhorias no Pipeline LLM:

  • Exemplos few-shot nas Passagens 3, 4, 5 — exemplos reais de vulnerabilidades e falsos positivos da base de conhecimento de exploits
  • Calibração de severidade — limites concretos vinculados ao impacto financeiro (Crítico >$1M, Alto >$100K, Médio >$10K)
  • Reforço de cadeia de pensamento — raciocínio obrigatório em 5 etapas antes da saída JSON
  • Rotação de múltiplos provedores — Gemini Flash para passagens baratas, Anthropic Claude para raciocínio, OpenAI GPT para diversidade
  • Conjunto de IA aposentado — o ensemble de 6 agentes (6x custo, pior contexto) substituído pela rotação de provedores dentro do pipeline estruturado

Novidades na v3.5

Mecanismo de Análise Aprofundada — Aether v3.5 transforma fundamentalmente como a ferramenta encontra vulnerabilidades, passando de uma chamada LLM única "encontre bugs" para um pipeline estruturado de 6 passagens que espelha como auditores profissionais abordam a revisão de código: entender primeiro, depois atacar sistematicamente.

Mecanismo de Análise Aprofundada (Pipeline LLM de 6 Passagens)

Em vez de enviar um contrato inteiro para um LLM com um único prompt, o Aether agora executa seis passagens de análise sequenciais com contexto acumulado:

As Passagens 1-2 são armazenadas em cache pelo hash de conteúdo do contrato, portanto reauditorias pulam a fase de entendimento. Cada passagem subsequente recebe todo o contexto anterior, construindo um modelo de ataque abrangente. Ativado por feature flag com AETHER_DEEP_ANALYSIS=1 (padrão LIGADO); cai para o método único em caso de falha.

Sistema de Arquétipos de Protocolo

Antes de analisar bugs, o Aether detecta que tipo de protocolo o contrato implementa e carrega listas de verificação de vulnerabilidades específicas do arquétipo:

10 arquétipos no total, cada um com 3-7 itens de verificação específicos extraídos de exploits do mundo real.

Base de Conhecimento de Exploits (50+ Padrões)

Um banco de dados estruturado de mais de 50 padrões de exploits do mundo real categorizados substitui a lista estática anterior de 10 padrões:

Cada padrão inclui indicadores de código, proteções ausentes, mecanismo de exploração passo a passo e precedentes do mundo real (com valores em dólar). Os padrões são filtrados pelo arquétipo detectado e área de foco do agente.

Mecanismo de Invariantes

Extrai automaticamente invariantes de protocolo de três fontes:

  1. Tags @invariant no NatSpec em comentários do contrato
  2. Invariantes descobertos por LLM da Passagem 1 da análise aprofundada
  3. Invariantes comuns detectados por padrão (conservação de saldo, produto constante AMM, índices de colateralização, etc.)

Gera suítes de teste Foundry invariant_*() que servem como provas de verificação formal leve — um teste de invariante com falha prova que o bug é real.

Correções no Pipeline

  • Calibração de severidade sensível ao contexto — não mais rebaixa genericamente division_by_zero, integer_underflow, etc. para baixo. Agora verifica se o achado está em um bloco unchecked{}, próximo a transferências de valor, em cálculos de preço ou em contextos de oráculo antes de decidir
  • Correção do gate de validação — achados "pending" agora passam para análise LLM (anteriormente apenas "validated" passava, descartando silenciosamente muitos achados reais)
  • Penalidade de confiança ciente de especialista — achados de agente único de um especialista em seu domínio (ex.: AnthropicReasoningSpecialist encontrando um bug de lógica complexo) recebem apenas penalidade de -0,05 em vez de -0,15
  • Correção de dedup por bucket de linha — removido o agrupamento arbitrário (line // 10) * 10 que dividia achados a 2 linhas de distância em grupos diferentes
  • Integração do detector DeFi — DeFiVulnerabilityDetector (análise de presença/ausência em dois estágios) agora executa no mecanismo de auditoria aprimorado principal, não apenas no pipeline baseado em fluxo

Novidades na v3.0

TUI Textual Totalmente Inline — Aether v3.0 é um aplicativo de tela cheia persistente que nunca retorna a um terminal bruto. Cada operação — auditorias, geração de PoC, geração de relatórios, seleção de escopo do GitHub, configuração de definições — é executada inteiramente dentro do TUI:

  • Zero chamadas app.suspend() — o TUI nunca desaparece, sem mudanças abruptas de terminal
  • Jobs em segundo plano para tudo — auditorias locais, auditorias GitHub, geração de PoC e geração de relatórios são executadas como threads daemon com streaming de saída ao vivo
  • Tabela de jobs ao vivo — visão estilo htop de todos os jobs em execução/concluídos com status em tempo real, progresso de fase, contagem de achados, custo e tempo decorrido
  • Detalhamento por job — pressione Enter em qualquer job para ver saída rolável ao vivo, barra de progresso da fase e metadados
  • Operações concorrentes — inicie várias auditorias, gerações de PoC e relatórios simultaneamente; todos visíveis e rastreáveis
  • Diálogo de seleção de contratos — seleção múltipla filtrável e quase em tela cheia substituindo o antigo seletor baseado em curses. Espaço para alternar, a/n para todos/nenhum, digite para filtrar, contratos previamente auditados com código de cores
  • Fluxo de auditoria GitHub inline — clone, descubra, selecione contratos e inicie auditorias sem sair do TUI. Gerenciamento de escopo (continuar, reauditar, novo escopo) via diálogos Textual nativos
  • Configurações inline — configuração de chave de API e seleção de modelo via TextInputDialog e SelectDialog, sem assistente de configuração externo
  • Barra de custo da sessão — rastreamento de custo LLM em tempo real por provedor (OpenAI, Gemini, Anthropic)
  • Atalhos de teclado — n Nova Auditoria, r Retomar, h Histórico, PoCs, Relatórios, Buscar, Configurações, Sair

Quatro Tipos de Jobs em Segundo Plano: Todas as operações pesadas são executadas como threads daemon em segundo plano via AuditRunner, com saída capturada por ThreadDemuxWriter e visível em JobDetailScreen:

Tipo de JobDescrição
localAuditorias de contrato únicas ou paralelas
github

Suporte LLM a Três Provedores: OpenAI (GPT-5/5.3), Google Gemini (2.5/3.0) e Anthropic Claude (Sonnet 4.5/Opus 4.6) para máxima flexibilidade e redundância.

Geração de PoC Aprimorada: Análise de contrato baseada em AST, correções iterativas de compilação e prompts LLM prontos para produção gerando exploits adequados para submissões de bug bounty.

Filtragem Avançada de Falsos Positivos: Validação em múltiplos estágios reduz falsos positivos de 66% para ~20-25%, melhorando a precisão de 33% para 75-80%:

  • Detecção de scripts — scripts de implantação (script/, .s.sol, forge-std/Script.sol) automaticamente excluídos da análise de vulnerabilidades
  • Marcadores de contexto de arquivo — prompts LLM incluem rótulos [PRODUCTION]/[DEPLOYMENT SCRIPT] para que os modelos foquem em código de produção
  • Detecção dinâmica de modificadores — modificadores de controle de acesso personalizados (ex.: onlyDistributor, authorized) extraídos do código-fonte do contrato e reconhecidos junto com padrões codificados
  • Dedup por escopo de função — achados duplicados na mesma função são mesclados em vez de usar proximidade frágil de número de linha
  • Detecção de construtor atômico — implantação + inicialização no mesmo construtor reconhecido como não executável por front-running
  • Detecção de governança (parâmetros protegidos por onlyOwner/onlyGovernor)
  • Análise de implantação (verifica se os caminhos de código são realmente usados em produção)
  • Verificações de proteção embutidas (proteção automática Solidity 0.8+, SafeMath)
  • Validação LLM ciente de governança com lista de verificação de 18 padrões
  • Rastreamento de precisão com resultados de submissão e ganhos de recompensas
  • Cache inteligente para análise repetida 2x mais rápida

Integração com Base de Dados de Vulnerabilidades Move: Padrões de 128 achados Críticos/Altos em 77 auditorias, adaptados para Solidity/EVM:

  • Lógica de negócios, gerenciamento de estado, inconsistência de dados, centralização, problemas de looping e validação de entrada aprimorada

Início Rápido

1. Configuração```bash

python setup.py # Interactive installer (recommended)

root@kitploit:~
### 2. Lançar Aether```bash
python aether.py         # Launches the full-screen Textual TUI

É isso. A TUI guia você por tudo através de atalhos de teclado e diálogos modais.


Requisitos

  • Python 3.11+ (testado com 3.12.8)
  • Node.js 22+ (para projetos baseados em Hardhat/npm)
  • Foundry (forge/anvil) no PATH para geração e validação de PoC
  • solc-select para múltiplas versões do compilador Solidity
  • py-solc-x (opcional) para análise de AST do Solidity — usa análise regex como fallback se indisponível
  • Chaves de API para funcionalidades de LLM:
    • OPENAI_API_KEY (para modelos GPT)
    • GEMINI_API_KEY (para modelos Gemini)
    • ANTHROPIC_API_KEY (para modelos Claude)
    • ETHERSCAN_API_KEY (opcional, para obter contratos verificados)

Configuração Manual

Se preferir instalação manual:```bash

Foundry

curl -L https://foundry.paradigm.xyz | bash && foundryup export PATH="$PATH:$HOME/.foundry/bin"

solc-select

pip install solc-select solc-select install 0.4.26 0.8.0 0.8.19 0.8.20 latest

Python dependencies

python -m venv venv && source venv/bin/activate pip install -r requirements.txt

root@kitploit:~
## Configuração

O assistente de configuração (`python setup.py`) cuida de tudo. Você também pode configurar a partir da TUI através de `s` (Configurações):

- **Configurar Chaves de API** — prompts sequenciais para chaves OpenAI, Gemini, Anthropic, Etherscan com valores atuais mascarados
- **Configurar Modelos** — selecione modelos por provedor entre as opções disponíveis
- **Assistente Completo** — executa as chaves de API seguidas pela seleção de modelo
- **Configurações de Triagem** — ajuste limites de severidade, níveis de confiança, número máximo de descobertas

Ou defina variáveis de ambiente diretamente:```bash
export OPENAI_API_KEY=sk-...
export GEMINI_API_KEY=...
export ANTHROPIC_API_KEY=...

A configuração é armazenada em ~/.aether/config.yaml.

Locais dos bancos de dados:

  • Resultados do motor: ~/.aether/aetheraudit.db
  • Fluxo de auditoria do GitHub: ~/.aether/aether_github_audit.db

Guia da TUI

Toda interação ocorre via atalhos de teclado na tela principal:

n — Nova Auditoria

Assistente de múltiplas etapas com três tipos de fonte:

Arquivo ou diretório local:

  1. Selecione o caminho via PathDialog
  2. Se for um diretório, selecione os contratos via CheckboxDialog
  3. Escolha as funcionalidades (Enhanced, LLM Validation, Foundry PoC, Enhanced Reports)
  4. Defina o diretório de saída
  5. Confirme e inicie como trabalho(s) em segundo plano

URL do GitHub:

  1. Insira a URL do repositório
  2. Aether clona o repositório e descobre os contratos (progresso mostrado inline)
  3. Se houver escopos anteriores, escolha: continuar, reauditar ou criar novo escopo
  4. Selecione os contratos via ContractSelectorDialog (filtrável, espaço para alternar, a/n para todos/nenhum)
  5. A auditoria é iniciada como um trabalho em segundo plano — visível na tabela de trabalhos

URL do explorador de blocos / endereço:

  1. Insira o endereço ou URL do explorador
  2. Aether busca o código-fonte verificado
  3. Continue pela seleção de funcionalidades e saída

r — Retomar Auditoria

Tabela de todas as auditorias do GitHub em andamento com nome do projeto, escopo, progresso (N/M contratos) e hora da última atualização. Selecione uma para verificar contratos pendentes e iniciar como trabalho em segundo plano.

h — Histórico de Auditorias

Visão unificada de todas as auditorias passadas de ambos os bancos de dados (local + GitHub). Selecione qualquer entrada para um submenu:

  • Ver Detalhes — detalhamento do escopo com progresso e status
  • Gerar PoCs — redireciona para o assistente de PoC com o projeto pré-selecionado
  • Reauditar — selecione contratos via ContractSelectorDialog, inicie como trabalho em segundo plano

p — Gerar PoCs

Selecione um projeto, configure itens máximos, gravidade mínima e filtro somente por consenso. A geração de PoC é executada como um trabalho em segundo plano — acompanhe o progresso na tabela de trabalhos.

o — Relatórios

Selecione projeto, escopo e formato (markdown/json/html/all). A geração de relatório é executada como um trabalho em segundo plano.

f — Buscar Contrato

Escolha uma rede entre mais de 10 blockchains suportadas, insira um endereço ou cole uma URL do explorador, busque o código-fonte verificado e, opcionalmente, audite-o imediatamente.

s — Configurações

  • Executar assistente de configuração completo — chaves de API e depois seleção de modelo, tudo inline
  • Ver configuração atual — exibição formatada de todas as configurações
  • Reconfigurar chaves de API — TextInputDialog com prompts exibindo valores atuais mascarados
  • Reconfigurar seleções de modelo — SelectDialog por provedor
  • Configurações de triagem — gravidade, limite de confiança, máximo de descobertas
  • Limpar dados — apagar banco de dados de auditoria local, banco de dados de auditoria do GitHub, cache de análise, ou tudo de uma vez (com confirmação)

Enter — Detalhe do Trabalho

Pressione Enter em qualquer linha da tabela de trabalhos para ver:

  • Saída de log ao vivo com rolagem (atualizada a cada segundo)
  • Barra de progresso da fase
  • Metadados do trabalho (tipo, alvo, status, custo, tempo decorrido)

q — Sair

Sai da TUI. Se houver trabalhos em execução, solicita confirmação.


Escopo e Capacidades

  • Análise de AST de Solidity — Análise de código baseada em compilador via py-solc-x para resolução adequada de herança, visibilidade de funções, layout de armazenamento e rastreamento de leitura/escrita de variáveis de estado; fallback gracioso com regex
  • Análise de grafo de fluxo de controle — build_cfg() constrói blocos básicos com árvores de dominância e detecção de cabeçalhos de laço; análise de blocos de assembly; contexto do CFG alimentado na análise profunda e propagação de taint
  • Mecanismo de análise de taint — Rastreia entradas controladas pelo usuário (8 tipos de fonte) através dos contratos até 12 tipos de sink perigosos com detecção de sanitização, rastreamento entre contratos e propagação no CFG ciente de ramificações
  • Análise entre contratos — Analisador de relacionamento entre contratos com detecção de limites de confiança, agrupamento union-find, passagem dedicada de LLM (Pass 3.5) para vulnerabilidades multi-contrato e RelatedContractResolver para contexto de dependências
  • Mecanismo de análise profunda — Pipeline de LLM de 6 passagens mais Pass 3.5 (entre contratos): entender → mapear superfície de ataque → verificar invariantes → análise entre contratos → análise entre funções → modelagem adversarial → casos extremos; seleção de nível de modelo por passagem, cache, exemplos few-shot, aplicação de cadeia de pensamento, contexto do CFG na Pass 2, calibração de gravidade por ML na Pass 5, contexto de contrato relacionado por passagem
  • Execução simbólica Halmos — HalmosRunner + HalmosPropertyGenerator para verificação formal de invariantes; integrado na validação Estágio 1.95; degradação graciosa se Halmos não estiver instalado
  • Loop de feedback de ML — AccuracyTracker registra resultados de submissão e gera pesos de confiança por detector; calibração de gravidade a partir de dados históricos injetada na análise profunda

Diretórios de Saída

  • ./output/ — Raiz geral de saída
  • ./output/reports/ — Relatórios gerados
  • ./output/pocs/ — Suítes de PoC Foundry geradas
  • ./output/exploit_tests/ — Resultados de testes de exploração

Arquitetura

Pontos de Entrada

  • aether.py — Único ponto de entrada; inicia a TUI Textual
  • cli/interactive_menu.py — Shim fino que cria JobManager + AetherApp
  • cli/tui/app.py — AetherApp(App) — aplicativo Textual principal com atalhos de teclado e temporizador de atualização de 1 segundo

Camada TUI (cli/tui/)

  • Telas: MainScreen (tabela de trabalhos + barra de custos), JobDetailScreen (log ao vivo + fase + metadados), NewAuditScreen, HistoryScreen, ResumeScreen, PoCScreen, ReportsScreen, FetchScreen, SettingsScreen
  • Widgets: JobsTable (DataTable consultando JobManager), CostBar (custo da sessão por provedor), LogViewer (RichLog com atualização incremental), PhaseBar (progresso com blocos Unicode)
  • Diálogos: ConfirmDialog, , , , , — todas subclasses de ModalScreen

Execução em Segundo Plano

  • cli/audit_runner.py — Classe AuditRunner executando auditorias, PoCs, relatórios e auditorias GitHub em threads daemon
  • core/job_manager.py — Singleton JobManager: registro de trabalhos da sessão (QUEUED/RUNNING/COMPLETED/FAILED/CANCELLED)
  • core/audit_progress.py — ContractAuditStatus com buffers de log por trabalho, ThreadDemuxWriter para captura de stdout/stderr
  • core/llm_usage_tracker.py — Singleton thread-safe com snapshot() para deltas de custo por trabalho

Orquestração Central

  • cli/main.py — Classe AetherCLI (~2600 linhas) — orquestrador de auditoria interna usado por AuditRunner
  • core/enhanced_audit_engine.py — Motor de auditoria principal com integração de análise profunda
  • core/post_audit_summary.py — Painel pós-auditoria com detalhamento de custo por provedor

Camada de Análise Profunda (v4.7)

  • core/deep_analysis_engine.py — Pipeline de LLM de 6 passagens mais Pass 3.5 (entre contratos): entender → superfície de ataque → invariantes → entre contratos → entre funções → adversarial → casos extremos; seleção de nível de modelo, cache, exemplos few-shot, aplicação de cadeia de pensamento, contexto do CFG na Pass 2, calibração de gravidade por ML na Pass 5, contexto de contrato relacionado por passagem
  • core/protocol_archetypes.py — Detecção de arquétipo de protocolo (14 tipos incluindo LIQUID_STAKING, PERPETUAL_DEX, CDP_STABLECOIN, YIELD_AGGREGATOR) com listas de verificação de vulnerabilidades por arquétipo
  • core/exploit_knowledge_base.py — Mais de 75 padrões reais de exploração categorizados em 14 categorias (incluindo CROSS_CONTRACT, SIGNATURE_AUTH, TOKEN_INTEGRATION, PROXY_UPGRADE, TYPE_SAFETY)
  • core/invariant_engine.py — Extração de invariantes (NatSpec + LLM + padrão) e geração de testes de invariante Foundry + geração de propriedades Halmos
  • core/solidity_ast.py — Análise de AST de Solidity via py-solc-x com fallback por regex para herança, visibilidade, layout de armazenamento, rastreamento de leitura/escrita de estado; construção de grafo de fluxo de controle (build_cfg(), get_dominators(), get_loop_headers())
  • core/taint_analyzer.py — Análise de fluxo de dados / taint com 8 tipos de fonte, 12 tipos de sink, detecção de sanitização, rastreamento entre contratos, propagação no CFG ciente de ramificações

Camada de Detecção

  • core/enhanced_vulnerability_detector.py — Detector principal com mais de 60 padrões
  • core/business_logic_detector.py, core/state_management_detector.py, core/data_inconsistency_detector.py, core/centralization_detector.py, core/looping_detector.py — Detectores inspirados em Move
  • core/defi_vulnerability_detector.py, core/mev_detector.py, core/oracle_manipulation_detector.py — Detectores específicos DeFi (detector DeFi integrado ao motor aprimorado na v3.5)
  • core/arithmetic_analyzer.py, core/precision_analyzer.py, core/gas_analyzer.py, , — Analisadores especializados (analisador de precisão aprimorado com detecção de inflação de participação, direção de arredondamento, truncamento de divisão, exploração de poeira, estouro de acumulador)

Camada de Validação

  • core/validation_pipeline.py — Pipeline de múltiplos estágios: verificação de proteção embutida, detecção de governança, validação ciente de taint (Estágio 1.85), verificação simbólica Halmos (Estágio 1.95), verificação de implantação, validação local
  • core/governance_detector.py, core/deployment_analyzer.py, core/llm_false_positive_filter.py
  • core/control_flow_guard_detector.py, core/inheritance_verifier.py
  • core/nodes/halmos_node.py — Nó do pipeline HalmosSymbolicNode para validação via execução simbólica

Camada LLM & IA

  • core/enhanced_llm_analyzer.py — Análise LLM estruturada (GPT/Gemini/Claude) com saída JSON e rotação multi-provedor
  • core/enhanced_prompts.py — Modelos de prompt de produção com carregamento dinâmico de padrões de exploração da base de conhecimento, exemplos few-shot, calibração de gravidade e aplicação de cadeia de pensamento

Camada de Geração de PoC

  • core/foundry_poc_generator.py (~8000 linhas) — Análise baseada em AST, feedback iterativo de compilação (até 5 tentativas), execução automática via forge test --json com análise de PoCTestResult e suporte a fork
  • core/llm_foundry_generator.py — Geração de testes baseada em LLM com documentação de API mock e padrões de setUp recomendados
  • core/enhanced_foundry_integration.py — Validação e formatação Foundry
  • core/poc_templates.py — Modelos de contratos mock (MockERC20, MockOracle, MockWETH, MockFlashLoanProvider)
  • core/poc_setup_generator.py — Geração inteligente de setUp(): extração de parâmetros de construtor, implantação de mock, manipulação de contratos atualizáveis, mint e aprovação de tokens

Camada de Persistência

  • core/database_manager.py — DatabaseManager (auditorias locais) + AetherDatabase (auditorias GitHub)
  • core/analysis_cache.py — Cache inteligente para análise repetida 2x mais rápida
  • core/accuracy_tracker.py — Loop de feedback ML: resultados de submissão, ganhos de recompensa, estatísticas de precisão por detector, geração de peso de confiança

Integrações

  • core/github_auditor.py — Clonar repositórios, detectar frameworks, descobrir contratos, coordenar análise
  • core/etherscan_fetcher.py, core/basescan_fetcher.py — Buscar contratos verificados de exploradores de blocos
  • core/exploit_tester.py — Validar explorações contra forks Anvil

Execução Baseada em Fluxo

Fluxos de auditoria definidos em configurações YAML (configs/). Pipeline de auditoria aprimorado: FileReaderNode -> StaticAnalysisNode -> LLMAnalysisNode -> EnhancedExploitabilityNode -> [FixGeneratorNode -> ValidationNode -> HalmosSymbolicNode] -> ReportNode


Testes

2059 testes em 76 arquivos de teste, executando em ~23 segundos:```bash python -m pytest tests/ # All tests (~23s, 2059 tests) python -m pytest tests/test_enhanced_detectors.py -v # Single file python -m pytest tests/test_enhanced_detectors.py::TestArithmeticAnalyzer -v # Single class python -m pytest tests/ -k "governance" -v # Pattern match python -m pytest tests/ --cov=core --cov-report=html # With coverage

root@kitploit:~
## Solução de Problemas

- **Foundry não encontrado** — Certifique-se de que `forge`/`anvil` estão instalados e no `PATH` (`foundryup` e `export PATH="$PATH:$HOME/.foundry/bin"`)
- **solc não encontrado** — Instale `solc-select` e as versões necessárias: `solc-select install 0.8.20 latest`
- **Funcionalidades LLM não funcionando** — Verifique se as chaves de API estão definidas. Alguns modelos podem não estar disponíveis na sua conta/região; o sistema faz fallback automaticamente
- **Banco de dados não encontrado** — Para relatórios do GitHub, certifique-se de que o fluxo de auditoria foi executado primeiro
- **Textual não carregando** — Execute `pip install textual>=1.0.0` se estiver faltando

---

## Registro de Alterações

### v4.7 — Execução Automática de PoC, Verificação Simbólica Halmos, Análise de CFG e Ciclo de Feedback ML
- **Execução automática de PoC** — PoCs Foundry geradas são compiladas e executadas automaticamente via `forge test --json` com análise de `PoCTestResult` e suporte a fork-mode; fase `POC_TESTING` para acompanhamento ao vivo na TUI
- **Execução simbólica Halmos** — Pipeline node `HalmosRunner`, `HalmosPropertyGenerator` e `HalmosSymbolicNode` (estágio de validação 1.95) para verificação formal de invariantes; degradação graciosa se Halmos não estiver instalado
- **Análise de grafo de fluxo de controle** — `BasicBlock`, `CFGEdge`, `ControlFlowGraph` com `build_cfg()`, árvores de dominância, detecção de cabeçalhos de loop, análise de blocos assembly; contexto CFG injetado na Pass 2 de análise profunda; propagação de taint ciente de ramos
- **Ciclo de feedback ML** — `AccuracyTracker` registra resultados de submissões com `get_detector_accuracy()` e `get_detector_weights()` para estatísticas por detector; ajuste de peso de confiança em `EnhancedVulnerabilityDetector`; calibração de gravidade na Pass 5 de análise profunda
- **Contexto de contratos relacionados** — `RelatedContractResolver` descobre contratos pai, interface, biblioteca e dependência com sistema de orçamento por passagem (200K/100K/50K caracteres); sumarização de bibliotecas padrão; descoberta de irmãos em arquivo único
- **Limpeza técnica** — 8.500 linhas de código morto removidas: deletados `ai_ensemble.py`, `audit_engine.py`, `fork_verifier.py`; removidas todas as referências a ai_ensemble do CLI, audit runner, telas TUI, gerador de relatórios
- **2059 testes** passando em 76 arquivos de teste

### v4.0 — Análise de AST Solidity, Análise de Taint e Rastreamento de Fluxo de Dados
- **Parser de AST Solidity** — integração total com solc via py-solc-x para resolução adequada de herança, visibilidade de funções, layout de armazenamento, rastreamento de leitura/escrita de estado; fallback gracioso com regex
- **Mecanismo de análise de taint** — rastreia entradas controladas pelo usuário através de 8 tipos de fonte para 12 sinks perigosos com detecção de sanitizadores e rastreamento entre contratos
- **Integração no pipeline** — dados AST alimentam a Pass 1, dados de taint alimentam a Pass 2, estágio de validação 1.85 ciente de taint
- **1839 testes** passando em 67 arquivos de teste (~23 segundos)

### v3.8 — Detecção Aprimorada e Geração de PoC
- **Análise entre contratos** — nova Pass 3.5 com analisador de relacionamento entre contratos, detecção de limites de confiança, agrupamento union-find
- **Banco de peculiaridades de tokens** — 12 categorias de comportamentos não padrão ERC-20 (fee-on-transfer, rebasing, ERC-777, etc.)
- **Mecanismo de precisão aprimorado** — detecção de inflação de participação, análise de direção de arredondamento, rastreamento de truncamento de divisão, exploração de poeira, estouro de acumulador
- **Geração de PoC executável** — biblioteca de contratos mock (ERC20, Oracle, WETH, FlashLoan), setUp() inteligente, máximo de tentativas de compilação 3→5
- **Exemplos few-shot** nas Passes 3, 4, 5 de análise profunda com exemplos reais de vulnerabilidades e falsos positivos
- **Calibração de gravidade** — limites concretos (Crítico >$1M, Alto >$100K, Médio >$10K, Baixo teórico)
- **Imposição de cadeia de pensamento** — 5 etapas obrigatórias de raciocínio antes da saída JSON
- **Conjunto de IA aposentado** — substituído por rotação multi-provedor nas passagens de análise profunda
- **Rotação multi-provedor** — Gemini Flash (passagens baratas), Anthropic Claude (raciocínio), OpenAI GPT (diversidade)
- **1682 testes** passando

### v3.7 — Arquétipos Expandidos e Padrões de Exploração
- **4 novos arquétipos de protocolo** — LIQUID_STAKING, PERPETUAL_DEX, CDP_STABLECOIN, YIELD_AGGREGATOR (10→14 total)
- **25 novos padrões de exploração** — CROSS_CONTRACT, SIGNATURE_AUTH, TOKEN_INTEGRATION, PROXY_UPGRADE, TYPE_SAFETY categorias (50→75 total)
- **Scanner de contratos melhorado** — abstracts agora são pontuados, ajustados limiares para suporte a monorepo
- **1528 testes** passando

### v3.5.2 — Redução de Falsos Positivos
- **Detecção de scripts na descoberta de contratos** — arquivos em `script/`/`scripts/`, arquivos `.s.sol`, e contratos que importam `forge-std/Script.sol` ou herdam `is Script` são marcados como scripts de implantação e excluídos da análise LLM de vulnerabilidades. Elimina toda uma classe de falsos positivos de helpers de implantação Foundry sendo analisados como código de produção
- **Marcadores de contexto de arquivo em prompts LLM** — conteúdo combinado agora inclui marcadores `// FILE: <nome>` por arquivo, e as passagens de análise profunda 1 e 3 recebem um cabeçalho `## Project Files` rotulando cada arquivo como `[PRODUCTION]` ou `[DEPLOYMENT SCRIPT]` para que os LLMs foquem no código certo
- **Detecção dinâmica de modificadores** — `GovernanceDetector` agora extrai modificadores de controle de acesso personalizados definidos no contrato (ex.: `onlyDistributor`, `onlyMinter`, `authorized`) varrendo definições de modificadores com prefixo `only` ou verificações `msg.sender`. Estes são mesclados com a lista de modificadores codificada para `has_access_control()` e `is_governance_function()`
- **Deduplicação em escopo de função** — `VulnerabilityDeduplicator` agora agrupa descobertas por `(function_name, vuln_type)` quando o código do contrato está disponível, substituindo a correspondência exata de linha frágil que perdia duplicatas em linhas adjacentes na mesma função. Faz fallback para agrupamento em baldes de 20 linhas quando o contexto da função não está disponível
- **Tolerância de linha alargada no conjunto de IA** — tolerância de `_findings_match_fuzzy()` aumentada de ±5 para ±15 linhas para capturar duplicatas da mesma função entre agentes
- **Padrão de falso positivo de construtor atômico** — `_check_constructor_context()` agora detecta quando um contrato é implantado (`new`/`Create2`) e inicializado (`.initialize()`) no mesmo construtor, marcando preocupações de front-running como falsos positivos, pois as operações são atômicas
- **Padrão de validação LLM #18** — adicionado "Implantação + Inicialização Atômica" à lista de verificação de 18 padrões de falso positivo no prompt de validação LLM
- **1489 testes** passando em 56 arquivos de teste (~40 segundos), acima de 1461

### v3.5 — Mecanismo de Análise Profunda
- **Pipeline de análise profunda de 6 passagens** — substitui chamadas LLM únicas por raciocínio estruturado multi-passo: Compreensão do Protocolo → Mapeamento da Superfície de Ataque → Análise de Violação de Invariantes → Interação entre Funções → Modelagem Adversarial → Casos Limite e de Borda. Cada passagem recebe contexto acumulado das passagens anteriores. Passagens 1-2 armazenadas em cache por hash de conteúdo para re-auditorias rápidas
- **Detecção de arquétipo de protocolo** — identifica automaticamente o tipo de protocolo (ERC-4626 Vault, Lending Pool, DEX/AMM, Bridge, Staking, Governance, Oracle, NFT Marketplace, Token, Orderbook) com listas de verificação de vulnerabilidades por arquétipo extraídas de explorações reais
- **Base de conhecimento de exploração** — 50+ padrões de exploração categorizados em 9 categorias (Inflação/Compartilhamento, Reentrância, Oracle, Governança, Ponte, Precisão/Arredondamento, Controle de Acesso, Econômico/DeFi, Lógico) substituindo a lista estática de 10 padrões. Cada padrão inclui indicadores de código, proteções ausentes, mecanismo de exploração passo a passo, precedentes reais com valores em dólar e aplicabilidade do arquétipo
- **Mecanismo de invariantes** — extrai invariantes de protocolo de tags NatSpec `@invariant`, análise LLM e 6 detectores de padrões comuns (conservação do vault, rastreamento de saldo, contabilidade de fornecimento, produto constante AMM, colateralização de empréstimos, recompensas de staking). Gera suites de teste Foundry `invariant_*()` como provas formais lite
- **Calibração de gravidade sensível ao contexto** — substitui rebaixamentos genéricos de gravidade por verificações de contexto de risco. Descobertas em blocos `unchecked{}`, perto de transferências de valor (`call{value:}`, `_mint`, `safeTransfer`), cálculos de preço ou contextos de oráculo preservam sua gravidade original
- **Correção do portão de validação** — descobertas `"pending"` agora passam para análise LLM com flag `needs_llm_validation`. Apenas descobertas explicitamente `"false_positive"` são descartadas (anteriormente, todas as descobertas não `"validated"` eram filtradas silenciosamente)
- **Penalidade de confiança ciente de especialista** — descobertas de agente único correspondentes à especialização do agente (ex.: AnthropicReasoningSpecialist + ataques econômicos) recebem penalidade -0,05; descobertas não especialistas mantêm -0,15
- **Correção de dedup por balde de linha** — removido o agrupamento `(line // 10) * 10` que causava problemas arbitrários de limite (linhas 9 e 11 em baldes diferentes). Dedup agora usa apenas tipo de vulnerabilidade normalizado, com `_findings_match_fuzzy()` lidando com proximidade de linha
- **Integração do detector DeFi** — `DeFiVulnerabilityDetector` (análise semântica de presença/ausência em dois estágios) agora executa no mecanismo de auditoria aprimorado junto com `EnhancedVulnerabilityDetector`
- **Padrões de exploração dinâmicos em prompts** — `enhanced_prompts.py` agora carrega padrões de ExploitKnowledgeBase filtrados por área de foco, com fallback para padrões estáticos
- **1461 testes** passando em 55 arquivos de teste (~50 segundos)

### v3.2 — Estatísticas de Trabalho e Correções de UI
- **Corrigido exibição sempre zero de descobertas/custos/estatísticas LLM do trabalho** — audit worker agora captura o dicionário de resultados de `run_audit()` para extrair contagem de descobertas; removido `LLMUsageTracker.reset()` que orfanava referências singleton; todos os 4 tipos de worker calculam estatísticas por trabalho a partir de deltas de snapshot
- **Corrigido artefato de repintura da UI ao trocar de janela** — substituídos contêineres roláveis por `Container` simples + `overflow: hidden` no JobDetailScreen para evitar quadros de compositor obsoletos
- **Movido "Job Details" para border_title** para renderização mais limpa do painel de metadados
- Removido `CLAUDE.md` do rastreamento git

### v3.0 — TUI Textual Totalmente Inline
- **Zero chamadas `app.suspend()`** — a TUI nunca cai para um terminal bruto; toda operação é executada inline
- **Geração de PoC em segundo plano** — executada como thread daemon via `AuditRunner.start_poc_generation()` com saída ao vivo no JobDetailScreen
- **Geração de relatório em segundo plano** — executada como thread daemon via `AuditRunner.start_report_generation()` com saída ao vivo
- **Auditorias GitHub em segundo plano** — seleção de escopo via diálogos Textual, auditoria executada como thread daemon via `AuditRunner.start_github_audit()`
- **ContractSelectorDialog** — modal multi-seleção filtrável quase em tela cheia substituindo `ScopeManager.interactive_select()` baseado em curses. Espaço para alternar, `a`/`n` para todos/nenhum, digitar para filtrar, contratos auditados anteriormente com código de cores
- **GitHubAuditHelper** — wrapper decomposto em torno de `GitHubAuditor`/`AetherDatabase` fornecendo operações atômicas (`clone_and_discover`, `get_scope_state`, `save_new_scope`, `get_pending_contracts`, `handle_reaudit`) chamáveis a partir de telas Textual
- **Configurações inline** — configuração de chave de API e modelo via TextInputDialog/SelectDialog nativos, sem assistente de configuração externo
- **Gerenciamento de escopo GitHub inline** — continuar, reauditar ou criar novo escopo via SelectDialog; seleção de contrato via ContractSelectorDialog
- **6 telas reescritas** — PoCScreen, ReportsScreen, SettingsScreen, NewAuditScreen, HistoryScreen, ResumeScreen — todas totalmente inline
- **770 testes** passando em 50 arquivos de teste

### v2.2 — Dashboard TUI Textual
- TUI Textual em tela cheia com aplicativo persistente, atalhos de teclado e temporizador de atualização de 1 segundo
- MainScreen com tabela de trabalhos ao vivo e barra de custo da sessão
- JobDetailScreen com visualizador de log ao vivo, barra de progresso de fase e metadados
- Diálogos modais (confirmar, entrada de texto, seleção, caixa de seleção, seletor de caminho) substituindo prompts questionary
- Execução de auditoria em segundo plano via AuditRunner com captura de saída ThreadDemuxWriter
- Singleton JobManager para registro de trabalhos da sessão
- Rastreamento de custo por trabalho via snapshots LLMUsageTracker

### v2.1 — Auditorias Paralelas, Remoção do Slither & Limpeza de Testes
- Mecanismo de auditoria paralela — execute múltiplos contratos simultaneamente com `ThreadPoolExecutor`, configurável até 8 workers paralelos
- Rastreamento de progresso thread-safe — `ContractAuditStatus` com bloqueio, `ThreadDemuxWriter` para multiplexação de stdout
- Resumo pós-auditoria — visualização consolidada de resultados após conclusão das auditorias paralelas
- Rastreamento de uso LLM — rastreie uso de tokens, custos e chamadas de API nos três provedores
- Slither totalmente removido — todas as dependências, código de integração e testes deletados (~1200 linhas); detectores baseados em padrão + ABI Foundry + regex são as únicas ferramentas de análise
- Limpeza do conjunto de testes — removidos 40+ arquivos de teste antigos/lentos/integração

### v2.0 — TUI de Menu Interativo
- TUI interativa baseada em menu como interface principal
- Assistente de auditoria guiada com seleção de fonte, caixas de seleção de recursos e confirmação
- Capacidade de retomar auditoria para auditorias GitHub em andamento
- Navegador unificado de histórico de auditoria nos bancos de dados locais e GitHub
- Geração integrada de PoC e fluxos de trabalho de relatório a partir do menu
- Busca de contratos multi-chain com auditoria imediata opcional
- Gerenciamento de configurações a partir do menu
- Inicialização/retorno do console a partir do menu

### v1.5 — Suporte LLM de Três Provedores e Análise Aprimorada
- Integração com Anthropic Claude (Sonnet 4.5, Opus 4.6, Haiku 4.5) como terceiro provedor LLM
- Conjunto de IA de 6 agentes: 2 OpenAI + 2 Gemini + 2 agentes especialistas Anthropic
- Fallback automático entre provedores para máxima disponibilidade
- Modelos OpenAI atualizados (GPT-5.3) e modelos Google Gemini (3.0 Flash/Pro)
- Assistente de configuração atualizado com configuração de chave de API Anthropic e seleção de modelo
- Corrigido comando CLI quebrado generate-foundry

---

## Licença

Aether é distribuído sob a **Licença MIT**. Consulte o arquivo [LICENSE](https://github.com/l33tdawg/aether/blob/HEAD/LICENSE) para obter detalhes.

## Autor

**Dhillon Andrew Kannabhiran** (@l33tdawg)
- Email: [email protected]
- Twitter: [@l33tdawg](https://twitter.com/l33tdawg)
- GitHub: [@l33tdawg](https://github.com/l33tdawg)

## Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para enviar issues, fazer fork do repositório e criar pull requests.
Baixar ferramenta
CategoriaSeveridadeTokens Exemplo
Taxa na transferênciaALTAUSDT, STA, PAXG
Tokens rebasáveisALTAstETH, AMPL, OHM
Callbacks ERC-777ALTAimBTC
Mintável via flash loanALTADAI
Retorno não padrãoMÉDIAUSDT antigo
Tokens com lista de bloqueioMÉDIAUSDC, USDT
Tokens pausáveisMÉDIAUSDC
Tokens com baixos decimaisMÉDIAUSDC (6), WBTC (8)
Hooks de transferênciaMÉDIALINK (ERC-677)
Corrida de aprovaçãoBAIXAVários
Múltiplos pontos de entradaBAIXATUSD
Tokens atualizáveisBAIXAUSDC v2
PassagemPropósitoNível do Modelo
Passagem 1Compreensão do Protocolo — o que o protocolo É, seus invariantes, fluxos de valor, premissas de confiançaBarato (em cache)
Passagem 2Mapeamento da Superfície de Ataque — todos os pontos de entrada, leituras/gravações de estado, janelas de reentrânciaBarato (em cache)
Passagem 3Análise de Violação de Invariantes — verificar sistematicamente cada invariante contra cada caminho de códigoForte
Passagem 4Interação entre Funções — análise de dependência de estado, dependências temporais, sequências de flash loanForte
Passagem 5Modelagem Adversarial — perspectiva explícita do atacante com flash loans, MEV, múltiplas contasForte
Passagem 6Casos Limite & Extremos — primeiras/últimas operações, valores zero, valores máximos, operações autorreferenciaisMédio
ArquétipoExemplos de Itens da Lista de Verificação
Vault ERC-4626Inflação do primeiro depositante, direção de arredondamento, manipulação de preço de participação via doação
Pool de EmpréstimoManipulação de preço de oráculo, manipulação de limite de liquidação, cascata de dívidas incobráveis, manipulação de taxa de juros
DEX/AMMManipulação do primeiro LP, ataques sandwich, oráculo de preço via reservas
BridgeReplay entre cadeias, comprometimento de validador, incompatibilidade de mapeamento de tokens, falsificação de prova de retirada
StakingManipulação de cálculo de recompensa, overflow de taxa de recompensa, reentrância de unstaking
GovernançaAtaques de governança com flash loan, bypass de timelock, manipulação de quórum
OráculoPreço desatualizado, desvio de preço, inatividade do sequenciador L2
CategoriaPadrõesExemplos
Ataques de Inflação/Participação6Primeiro depositante ERC-4626, inflação de token LP, manipulação baseada em doação
Reentrância7Clássica, somente leitura, entre funções, entre contratos, hooks ERC-777/1155, callbacks de flash loan
Oráculo5Manipulação de preço à vista, manipulação de TWAP, desatualização, incompatibilidade de decimais, sequenciador L2
Governança4Votação com flash loan (Beanstalk), bypass de timelock, manipulação de quórum
Bridge5Replay de mensagem (Nomad), comprometimento de validador (Ronin), mapeamento de tokens (Wormhole)
Precisão/Arredondamento4Direção de arredondamento, overflow não verificado, taxa na transferência, desvio de token rebasável
Controle de Acesso5Proxy não inicializado, colisão de armazenamento, colisão de seletor, injeção de delegatecall
Econômico/DeFi8Ataques sandwich, liquidez JIT, cascata de dívidas incobráveis, bomba de dados de retorno, replay de assinatura
Lógica6Off-by-one, falta de deadline/slippage, retornos não verificados, contabilidade de autotransferência
p
o
f
s
q
Auditorias de repositório GitHub com escopo pré-selecionado
pocGeração de prova de conceito Foundry
reportGeração de relatório de auditoria (markdown/json/html)
  • Contexto de contrato relacionado — RelatedContractResolver descobre contratos pai, interface, biblioteca e dependência; sistema de orçamento por passagem com sumarização de bibliotecas padrão
  • Detecção de arquétipo de protocolo — Identificação automática de 14 tipos de protocolo (vault, lending, DEX, bridge, staking, governance, oracle, liquid staking, perpetual DEX, CDP stablecoin, yield aggregator e mais) com listas de verificação de vulnerabilidades específicas do arquétipo
  • Base de conhecimento de explorações — Mais de 75 padrões reais de exploração categorizados em 14 categorias com indicadores de código, proteções ausentes e precedentes; filtrável por arquétipo e área de foco
  • Banco de dados de peculiaridades de tokens — 12 categorias de comportamentos ERC-20 não padrão (fee-on-transfer, rebasing, ERC-777, flash-mintable, blocklist, pausable, low-decimal, etc.) integradas ao pipeline de detecção
  • Mecanismo de invariantes — Extrai invariantes de protocolo de NatSpec, análise LLM e padrões de código; gera testes de invariante Foundry
  • Análise estática — Mais de 180 detectores baseados em padrões (reentrância, controle de acesso, aritmética, manipulação de oráculo, flash loans, MEV, governança, DeFi específico, peculiaridades de tokens, precisão/arredondamento e mais)
  • Mecanismo de precisão aprimorada — Detecção de inflação de participação, análise de direção de arredondamento, rastreamento de truncamento de divisão, exploração de poeira, avaliação de estouro de acumulador
  • Análise LLM — Análise estruturada e orientada à validação com OpenAI, Gemini e Claude; rotação multi-provedor com fallback automático; calibração de gravidade vinculada a limites de impacto financeiro
  • Filtragem ciente de contexto — Calibração de gravidade que verifica o contexto de risco (blocos não verificados, operações de valor, uso de oráculo) antes de rebaixar; estágio de validação ciente de taint; descobertas pendentes preservadas para validação LLM
  • Auditoria paralela — Análise concorrente de múltiplos contratos com progresso ao vivo na tabela de trabalhos
  • Fluxo de auditoria do GitHub — Clonar repositórios, detectar frameworks, descobrir contratos, seleção de escopo inline, estado persistente
  • Geração de PoC Foundry — Análise baseada em AST, feedback iterativo de compilação (até 5 tentativas), biblioteca de contratos mock (ERC20, Oracle, WETH, FlashLoan), geração inteligente de setUp(), prompts de exploração prontos para produção, execução automática via forge test --json com suporte a fork
  • Busca de contratos multi-chain — Mais de 10 redes EVM + suporte Solana
  • Relatórios — Geração de relatórios Markdown, JSON e HTML a partir de dados de auditoria
  • Rastreamento de uso de LLM — Uso de tokens, rastreamento de custos e resumo pós-auditoria em todos os provedores
  • Persistência — Dois bancos de dados SQLite para resultados do motor e fluxo de auditoria do GitHub
  • TextInputDialog
    SelectDialog
    CheckboxDialog
    PathDialog
    ContractSelectorDialog
  • Ajudantes: GitHubAuditHelper — operações de auditoria GitHub decompostas para integração TUI
  • Tema: theme.tcss — CSS Textual com tema ciano
  • core/cross_contract_analyzer.py — Análise de relacionamento entre contratos com detecção de limites de confiança, agrupamento union-find e RelatedContractResolver para contexto de dependências
  • core/token_quirks.py — Banco de dados de peculiaridades de tokens (12 categorias de comportamentos ERC-20 não padrão)
  • core/halmos_runner.py — Executor de execução simbólica Halmos para verificação formal
  • core/halmos_property_generator.py — Gera automaticamente propriedades de verificação Halmos a partir de invariantes
  • core/accuracy_tracker.py — Loop de feedback ML: rastreamento de precisão por detector, ajuste de peso de confiança, calibração de gravidade
  • core/input_validation_detector.py
    core/data_decoding_analyzer.py
  • Detecção de peculiaridades de tokens integrada ao pipeline de detecção estática via core/token_quirks.py