
Инструмент анализа поведения в реальном времени, который изолирует подозрительные пакеты в Docker, отслеживает системные вызовы с помощью strace, отображает каскады процессов в виде ориентированных графов и обнаруживает атаки на цепочку поставок с использованием сигнатур YARA, аномалий ML и анализа временных паттернов.

Демонстрация TraceTree
TraceTree (cascade-analyzer) — это автономный организм безопасности, созданный для эпохи агентов. Он выходит за рамки простого сканирования, превращаясь в надежную, закаленную и масштабируемую экосистему обнаружения. Как и его маскот-паук, TraceTree сплетает комплексную паутину защиты вокруг вашего рабочего процесса разработки, используя свои восемь специализированных «ног».
TraceTree может использоваться как шлюз проверки перед тем, как агенты или люди доверят установку пакета. См. Экспорт квитанции поведения для небольшого формата квитанции, совместимого с JSON/SARIF, который суммирует хеш цели, политику песочницы, наблюдаемое поведение, хеши артефактов, вердикт и настройки конфиденциальности без раскрытия необработанных журналов системных вызовов.
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
## 8 Лап Паука TraceTree
1. **Лапа 1: Изоляция в песочнице (Ловушка)** — Выполняет цели в изолированных Docker-контейнерах (или в высокопроизводительном режиме `direct`), где угрозы физически сдерживаются.
2. **Лапа 2: Разбор системных вызовов (Нервная система)** — Высокоточный движок, отслеживающий каждую «вибрацию» (системный вызов) процесса к ОС.
3. **Лапа 3: Поведенческое графостроение (Паутина)** — Отображает «Каскад» взаимодействий процессов, файлов и сетевых узлов, используя направленные графы NetworkX.
4. **Лапа 4: Обнаружение аномалий с помощью ML (Интуиция)** — Пользовательская модель Random Forest (обученная на небольшом репрезентативном наборе чистых/вредоносных пакетов, а также на опциональных живых фидах MalwareBazaar), предсказывающая вредоносные намерения с высокой точностью.
5. **Лапа 5: Поиск по сигнатурам YARA (Память)** — Интегрированная библиотека известной ДНК вредоносных программ и шаблонов эксплойтов (реверс-шеллы, криптомайнеры и т.д.).
6. **Лапа 6: Протокол безопасности MCP (Щит агента)** — Специализированная защита для серверов протокола Model Context, защищающая инструменты, используемые AI-агентами.
7. **Лапа 7: Страж ИИ безопасности (Проактивная паутина)** — «Умный сканер» перед коммитом, использующий локальные LLM (Qwen-Coder) для перехвата утечек и инъекций до того, как они попадут в историю.
8. **Лапа 8: Анализ временных рядов и N-грамм (Сканирование ДНК)** — Идентифицирует угрозы по *ритму* и *последовательности* их действий во времени.
## Как это работает```
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) до начала установки/выполнения, поэтому любые попытки исходящих соединений логируются, но блокируются.strace -t -f -e trace=all. Флаг -t добавляет временные метки для временного анализа, -f отслеживает дочерние процессы.monitor/parser.py) — Парсер на основе регулярных выражений, обрабатывающий многострочный вывод strace и форматы как с [pid], так и с голым PID. Извлекает создание процессов, доступ к файлам, сетевые соединения и операции с памятью. Каждому системному вызову присваивается весовой коэффициент серьёзности (0–9) на основе его релевантности для безопасности.monitor/signatures.py) — Сопоставляет поток событий с 8 шаблонами поведенческих сигнатур, определёнными в data/signatures.json. Каждое совпадение выдаёт доказательства, перечисляющие конкретные события, которые его вызвали.monitor/timeline.py) — Обнаруживает 5 временных поведенческих паттернов на основе потока событий с временными метками (например, чтение учётных данных с последующим внешним соединением в течение 5 секунд).graph/builder.py) — Строит ориентированный граф NetworkX с узлами процессов, файлов и сети. Добавляет временные рёбра между последовательными событиями одного PID в окне 5 секунд.ml/detector.py) — Извлекает вектор из 10 признаков из графа и распарсенных данных. Использует RandomForestClassifier, если доступна обученная модель, в противном случае использует IsolationForest, обученный на 10 жёстко заданных базовых линиях чистых пакетов. Оценки серьёзности и количество временных паттернов повышают итоговую уверенность.