
Ferramenta de análise comportamental em tempo de execução que isola pacotes suspeitos em Docker, rastreia chamadas de sistema com strace, mapeia cascatas de processos em grafos direcionados e detecta ataques à cadeia de suprimentos usando assinaturas YARA, detecção de anomalias por ML e análise de padrões temporais.

Demonstração TraceTree
TraceTree (cascade-analyzer) é um organismo de segurança autônomo projetado para a era agentiva. Ele vai além da simples verificação, tornando-se um ecossistema de detecção robusto, endurecido e escalável. Como seu mascote, a aranha, o TraceTree tece uma teia abrangente de proteção ao redor do seu fluxo de trabalho de desenvolvimento, usando suas oito 'pernas' especializadas.
TraceTree pode ser usado como uma porta de revisão antes que agentes ou humanos confiem na instalação de um pacote. Veja Exportação de recibo de comportamento para um formato de recibo pequeno e compatível com JSON/SARIF que resume hash do alvo, política de sandbox, comportamento observado, hashes de artefatos, veredito e padrões de privacidade sem expor logs brutos de chamadas de sistema.
TraceTree/ ├── api/ # API stubs ├── codebase-analysis-docs/ # Architecture documents and knowledge guides ├── data/ # Behavioral signatures, rules, and training datasets ├── docs/ # Documentation assets ├── examples/ # Demo scripts and usage examples ├── frontend/ # Next.js/React web dashboard ├── graph/ # NetworkX directed graph builder ├── hooks/ # Git/Shell hooks for background monitoring ├── logs/ # Execution trace logs and strace outputs ├── macapp/ # Native macOS menu bar app ├── mascot/ # Console ASCII spider mascot ├── mcp/ # MCP server security testing module ├── ml/ # Machine learning classification and anomaly detection ├── monitor/ # Core syscall parser, YARA matching, and timelines ├── orchestrator/ # TypeScript multi-agent coordination server ├── repocheckai/ # Repository analysis engine (TypeScript/Node) ├── samples/ # Malware and benign files for sandbox tests ├── sandbox/ # Docker container manager and strace sandbox ├── test_targets/ # Mock packages/servers for detection testing ├── tests/ # Unit, integration, and system tests ├── watcher/ # File system change listener daemon └── worker/ # Background task execution worker
## As 8 Pernas da Aranha TraceTree
1. **Perna 1: Isolamento em Sandbox (A Armadilha)** — Executa alvos em contêineres Docker isolados (ou um modo `direct` de alto desempenho) onde as ameaças são fisicamente contidas.
2. **Perna 2: Análise de Syscalls (O Sistema Nervoso)** — Um motor de alta precisão que monitora cada "vibração" (chamada de sistema) que um processo faz ao SO.
3. **Perna 3: Gráfico Comportamental (A Teia)** — Mapeia a "Cascata" de como processos, arquivos e nós de rede interagem usando grafos direcionados do NetworkX.
4. **Perna 4: Detecção de Anomalias por ML (A Intuição)** — Um modelo Random Forest treinado sob medida (treinado em um pequeno conjunto de dados representativo de pacotes limpos/maliciosos, mais feeds opcionais ao vivo do MalwareBazaar) que prevê intenção maliciosa com alta confiança.
5. **Perna 5: Correspondência de Assinaturas YARA (A Memória)** — Uma biblioteca integrada de DNA de malware conhecido e padrões de exploração (Reverse Shells, Cryptominers, etc.).
6. **Perna 6: Protocolo de Segurança MCP (O Escudo do Agente)** — Proteção especializada para servidores do Model Context Protocol, defendendo as ferramentas que os agentes de IA usam.
7. **Perna 7: AI Guardiã de Segurança (A Teia Proativa)** — Um "Smart Scanner" pré-commit usando LLMs locais (Qwen-Coder) para capturar vazamentos e injeções antes que cheguem ao seu histórico.
8. **Perna 8: Análise Temporal e de N-gramas (A Varredura de DNA)** — Identifica ameaças pelo *ritmo* e *sequência* de suas ações ao longo do tempo.
## Como Funciona```
target ──► Docker sandbox (network dropped) ──► strace -t -f
│
▼
strace log
│
┌────────────────┼────────────────┐
▼ ▼ ▼
strace parser signature temporal
(parser.py) matcher (sigs) analyzer
│ │ │
└───────┬────────┴────────────────┘
▼
NetworkX graph
(builder.py)
│
▼
ML anomaly detection
(RandomForest / IsolationForest)
│
▼
verdict
ip link set eth0 down) antes do início da instalação/execução, portanto, quaisquer tentativas de conexão de saída são registadas, mas bloqueadas.strace -t -f -e trace=all. A flag -t adiciona carimbos de data/hora para análise temporal, -f segue os processos filhos.monitor/parser.py) — Parser baseado em regex que processa saída strace multilinha e ambos os formatos [pid] e pid simples. Extrai criação de processos, acesso a arquivos, conexões de rede e operações de memória. Cada syscall recebe um peso de gravidade (0–9) com base na sua relevância de segurança.monitor/signatures.py) — Compara o fluxo de eventos analisado com 8 padrões de assinatura comportamental definidos em data/signatures.json. Cada correspondência produz evidências listando os eventos específicos que a desencadearam.monitor/timeline.py) — Detecta 5 padrões comportamentais baseados no tempo a partir do fluxo de eventos com carimbo de data/hora (ex.: leitura de credencial seguida de conexão externa em 5 segundos).graph/builder.py) — Constrói um grafo direcionado NetworkX com nós de processo, arquivo e rede. Adiciona arestas temporais entre eventos consecutivos do mesmo PID dentro de uma janela de 5 segundos.ml/detector.py) — Extrai um vetor de 10 características do grafo e dos dados analisados. Usa um RandomForestClassifier se um modelo treinado estiver disponível, recorrendo a um IsolationForest treinado em 10 bases de referência de pacotes limpos codificados. Pontuações de gravidade e contagens de padrões temporais aumentam a confiança final.