Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
raptor — Автономный фреймворк для исследований в области безопасности, интегрирующий статический анализ, бинарный анализ, фаззинг, валидацию уязвимостей на базе LLM, генерацию эксплойтов и написание патчей для наступательных и оборонительных операций. | Kitploit
Инструменты/GitHubGitHub/gadievron/raptor
Фреймворки для пентестаДинамический анализ (песочница)Фреймворки для эксплойтовСтатический анализ кода (SAST)Анализ уязвимостейФаззингАнализ Бинарных ФайловБезопасность Цепочки ПоставокОбратная Разработка с Помощью ИИRed Teaming
GitHub
3.6k5624 ч 54 мин назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
gadievron/raptor

raptor

Автономный фреймворк для исследований в области безопасности, интегрирующий статический анализ, бинарный анализ, фаззинг, валидацию уязвимостей на базе LLM, генерацию эксплойтов и написание патчей для наступательных и оборонительных операций.

Репозиторий
root@kitploit:~
╔═══════════════════════════════════════════════════════════════════════════╗
║                                                                           ║
║             ██████╗  █████╗ ██████╗ ████████╗ ██████╗ ██████╗             ║
║             ██╔══██╗██╔══██╗██╔══██╗╚══██╔══╝██╔═══██╗██╔══██╗            ║
║             ██████╔╝███████║██████╔╝   ██║   ██║   ██║██████╔╝            ║
║             ██╔══██╗██╔══██║██╔═══╝    ██║   ██║   ██║██╔══██╗            ║
║             ██║  ██║██║  ██║██║        ██║   ╚██████╔╝██║  ██║            ║
║             ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝        ╚═╝    ╚═════╝ ╚═╝  ╚═╝            ║
║                                                                           ║
║             Autonomous Offensive/Defensive Research Framework             ║
║             Based on Claude Code (v3.0.0)                                 ║
║                                                                           ║
║             Gadi Evron, Daniel Cuthbert, Thomas Dullien (Halvar Flake)    ║
║             Michael Bargury, John Cartwright                              ║
║                                                                           ║
╚═══════════════════════════════════════════════════════════════════════════╝

⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⣤⣤⣀⣀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣾⣿⣿⠿⠿⠟
⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣀⣀⣤⣴⣶⣶⣶⣤⣿⡿⠁⠀⠀⠀
⣀⠤⠴⠒⠒⠛⠛⠛⠛⠛⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠁⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⣿⣿⣿⡟⠻⢿⡀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⢿⣿⠟⠀⠸⣊⡽⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇⣿⡁⠀⠀⠀⠉⠁⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⠿⣿⣧⠀ Get them bugs.....⠀⠀⠀⠀⠀

Авторы: Gadi Evron, Daniel Cuthbert, Thomas Dullien (Halvar Flake), Michael Bargury, John Cartwright (@gadievron, @danielcuthbert, @thomasdullien, @mbrg, @grokjc)

Лицензия: MIT, see LICENSE. Обратите внимание, что CodeQL имеет собственную лицензию и не допускает коммерческого использования.

Репозиторий: https://github.com/gadievron/raptor


Что такое RAPTOR?

RAPTOR — это автономный фреймворк для исследований в области безопасности, построенный на базе Claude Code (но не привязанный к нему — вы можете подключить свой собственный уровень анализа). Он объединяет статический анализ, анализ бинарных файлов, проверку уязвимостей на основе LLM, генерацию эксплойтов и написание патчей в единый рабочий процесс, который можно запускать для кодовой базы или бинарного файла.

Это не отшлифованное программное обеспечение. Оно было создано в свободное время, скреплено энтузиазмом и изолентой, и работает достаточно хорошо, чтобы мы не могли перестать им пользоваться. Если вы хотите улучшить его, открывайте PR.

RAPTOR расшифровывается как Recursive Autonomous Penetration Testing and Observation Robot. Мы очень хотели назвать его RAPTOR.


Предварительные требования

  • Claude Code с активной подпиской (Max, Pro, Team или Enterprise) или ключом API Anthropic. Это уровень оркестрации — RAPTOR выполняется внутри сессии Claude Code.
  • Python 3.10+ и Node.js 18+.
  • Semgrep (pip install semgrep) для статического анализа. CodeQL опционален, но рекомендуется.

Для уровня диспетчеризации анализа (LLM, которая анализирует отдельные находки), Claude Code по умолчанию обрабатывает всё сам — дополнительные ключи API не нужны. Если вы хотите многомодельный анализ (например, Claude + GPT + Gemini), вам понадобятся ключи API для каждого провайдера. См. Использование другой LLM ниже.

Быстрый старт

Вариант 1: Установка вручную```bash

Clone the repo

git clone https://github.com/gadievron/raptor.git cd raptor

Install Python dependencies

pip install -r requirements.txt

Install Claude Code (if you don't already have it)

npm install -g @anthropic-ai/claude-code

Install Semgrep (required for scanning)

pip install semgrep

Launch RAPTOR

claude

root@kitploit:~
Если добавить `bin/` в `PATH` (или создать симлинк `bin/raptor` где-нибудь в `PATH`), вы сможете запускать `raptor` из любого каталога — лаунчер определяет расположение установки RAPTOR и автоматически настраивает рабочую директорию.

**Важно:** RAPTOR загружает свою конфигурацию из директории репозитория. Если вы запустите `claude` из другого каталога, вы получите обычный Claude Code, а не RAPTOR. Либо сначала перейдите в репозиторий (`cd`), либо используйте лаунчер `raptor`.

### Вариант 2: Devcontainer (рекомендуется)

Всё предустановлено. Откройте в VS Code через **Dev Containers: Open Folder in Container** или потяните предсобранный образ:```bash
docker pull danielcuthbert/raptor:latest
docker run --privileged -it -v "$(pwd):/workspaces/raptor" danielcuthbert/raptor:latest

Или соберите его самостоятельно вместо того, чтобы тянуть:```bash docker build -f .devcontainer/Dockerfile -t raptor:latest . docker run --privileged -it -v "$(pwd):/workspaces/raptor" raptor:latest

root@kitploit:~
Флаг `--privileged` требуется для детерминированного отладчика `rr`. Образ большой (около 6 ГБ). Он основан на devcontainer Microsoft Python 3.12 и добавляет инструменты статического анализа, фаззинга и автоматизации браузера.

Попав внутрь, просто скажите "hi", чтобы начать, или переходите сразу к команде.

---

## Что ожидать при первом запуске

Самое простое, что вы можете сделать:```
/scan /path/to/code

Это запускает Semgrep (и CodeQL, если установлен) против цели, дедублицирует результаты и записывает отчёт в формате SARIF. Без анализа LLM, без ключей API, кроме Claude Code. Занимает несколько минут в типичном репозитории.

Чтобы добавить валидацию на основе LLM:``` /agentic /path/to/code

root@kitploit:~
Это запускает полный конвейер: сканирование, дедупликация, затем отправка каждого найденного через этапы валидации (A-F). На кодовой базе среднего размера с ~50 находками ожидайте 10-30 минут и 2-8 долларов затрат на уровне анализа LLM (в зависимости от модели). Лимит стоимости по умолчанию — $10 за запуск; настройте с помощью `--max-cost-usd`.

**Примечание о стоимости:** Оркестрационный слой Claude Code использует вашу подписку Claude. Слой диспетчеризации анализа совершает отдельные вызовы API LLM, которые оплачиваются за токен. Если вы используете только Claude Code в качестве модели анализа (по умолчанию), дополнительных затрат сверх подписки нет. Если вы настраиваете внешние модели (OpenAI, Gemini и т.д.), эти вызовы API оплачиваются соответствующим провайдерам.

---

## Модель безопасности

RAPTOR запускает сгенерированный LLM код и анализирует недоверенные репозитории. Подпроцессы, обрабатывающие недоверенное содержимое, изолируются с помощью пространств имён Linux, Landlock и seccomp. Песочница блокирует доступ к сети, ограничивает видимость файловой системы и лимитирует потребление ресурсов. См. `docs/sandbox.md` для полной модели угроз и конфигурации.

Переменные окружения, которые могут внедрить код в цепочку запуска, очищаются при старте (`core/security/_dangerous_env_strip.sh`). Пути к файлам из отсканированных репозиториев никогда не интерполируются в строки оболочки — все вызовы подпроцессов используют аргументы на основе списков.

---

## Что может RAPTOR

| Команда | Что делает | Статус |
|---------|-------------|--------|
| `/agentic` | Полный автономный рабочий процесс: сканирование, валидация, эксплуатация, исправление | Стабильный |
| `/scan` | Статический анализ с помощью Semgrep и CodeQL | Стабильный |
| `/understand` | Картирование поверхности атаки, трассировка потоков данных, поиск вариантов уязвимостей | Стабильный |
| `/binary` | Исследование бинарников методом чёрного ящика, данные времени выполнения, графовые запросы и передача | Бета |
| `/validate` | Многоэтапный конвейер валидации эксплуатируемости (этапы 0-F) | Стабильный |
| `/codeql` | Углублённый анализ только с помощью CodeQL с предварительной фильтрацией потоков данных на основе SMT | Стабильный |
| `/sca` | Анализ состава ПО: зависимости, рекомендации, сигналы цепочки поставок, SBOM и исправления | Бета |
| `/exploit` | Генерация кода эксплойта для подтверждения концепции | Бета |
| `/patch` | Генерация безопасных исправлений для подтверждённых уязвимостей | Бета |
| `/fuzz` | Фаззинг бинарников с помощью AFL++ и анализ сбоев | Стабильный |
| `/crash-analysis` | Автономный анализ первопричин сбоев C/C++ | Стабильный |
| `/oss-forensics` | Форензика на основе доказательств для репозиториев GitHub | Стабильный |
| `/project` | Именованные рабочие пространства для организации запусков и отслеживания находок с течением времени | Стабильный |
| `/threat-model` | Создание, просмотр и поддержка моделей угроз для каждого проекта | Стабильный |
| `/sage` | Постоянный слой памяти (сохранение, извлечение, связывание, подтверждение) | Стабильный |
| `/frida` | Динамическая инструментация через Frida | Альфа |
| `/web` | Сканирование веб-приложений | Альфа/заглушка |

---

## Как работает конвейер

Начните с создания проекта, чтобы все ваши запуски попадали в одно место:```
/project create myapp --target /path/to/code   # create a project first
/project use myapp                             # set it as active
/understand --map                              # map the attack surface
/agentic --threat-model --validate             # map, model, scan, validate
/project findings                              # review everything in one place

Для скомпилированного артефакта эквивалентной отправной точкой является:```text /binary investigate /path/to/binary # build the evidence-backed binary map /binary graph --edges --json # query the persisted graph /binary trace-parser # collect runtime parser evidence /binary harness # draft a harness only when the boundary is explicit

root@kitploit:~
`/understand` строит карту контекста точек входа, границ доверия и стоков (sinks) до того, как начнется сканирование. `/agentic` затем запускает Semgrep и CodeQL, дедублицирует находки и отправляет каждую на проверку с использованием методологии exploitation-validator:

С флагом `--threat-model` RAPTOR сначала строит карту, создаёт `threat-model.json` и `THREAT_MODEL.md`, если их ещё нет в проекте, затем передаёт компактную версию в `/understand`, автономный анализ и `/validate`. Существующие модели угроз проекта сохраняются, если не передан флаг `--threat-model-refresh`; устаревшие запасные карты отклоняются, если только явно не указан `--threat-model-use-stale`. Также он превращает отмеченные непроверенные потоки в кандидаты SARIF, чтобы пропуски сканера не прерывали выполнение. Это контекст, управляемый оператором, а не магическое доказательство: находки всё ещё требуют подтверждения кодом или оракулом. См. `docs/threat-model.md`.

- Стадия A: действительно ли шаблон является уязвимостью, или это шум от сопоставления шаблонов инструмента?
- Стадия B: что нужно атакующему для её достижения, и что стоит на пути?
- Стадия C: существует ли путь выполнения на самом деле? Можно ли его достичь извне?
- Стадия D: окончательное решение — это тестовый код, требуются ли нереалистичные предусловия, уклоняется ли модель?
- Стадия E: возможность эксплуатации бинарного файла (при наличии скомпилированного артефакта)
- Стадия F: саморецензирование — не уклонялась ли какая-либо из предыдущих стадий или не противоречила ли себе?

Находки, прошедшие проверку, получают сгенерированные PoC эксплойтов и патчи. В конце выполняется межнаходочный анализ для поиска общих корневых причин и цепочек атак.

`/validate` запускает этот же конвейер как отдельный шаг, если у вас уже есть находки из предыдущего сканирования.

Для скомпилированного артефакта `/binary <path>` теперь выполняет исследование, основанное на доказательствах, а не выгружает кучу необработанных артефактов обратной разработки оператору. Под капотом он по-прежнему строит манифест, привязанный к SHA-256, реестр доказательств, карту контекста, контрольный список и граф SQLite из метаданных файла, импортов и перекрёстных ссылок radare2. Приложения Mach-O также получают инвентаризацию срезов, метаданные пакета и селекторы классов Objective-C / Swift; псевдокод высокой ценности сохраняется, а не исчезает внутри выполнения. Экспорты DLL PE, диспетчеры драйверов Windows и обработчики ioctl модулей ядра Linux также обрабатываются как свои собственные кандидаты на вход, при этом архитектура PE считывается из заголовка COFF, а не угадывается. Затем уровень исследования запрашивает этот граф, ранжирует внешние входы перед общими направлениями стоков, обнаруживает объявленные вспомогательные/родственные бинарные файлы и записывает компактный отчёт, разделённый на факты, структурные выводы и неподтверждённые гипотезы. Наблюдения Frida, свидетели краш-тестов, явные проверки Z3 и бинарные различия могут затем добавить более сильные доказательства позже. RAPTOR также сохраняет внутренний граф вызовов, необходимый для восстановления ограниченных кандидатов от входа до парсера, поэтому обратный вызов приложения может быть сужен до внутренней функции, которая на самом деле вызывает `XML_Parse`, `d2i_X509`, `jpeg_read_header` или другую реальную поверхность парсера, не выдавая это за доказательство потока данных. `/binary trace-parser <run-dir>` — это явное динамическое продолжение: оно запускает узкий трассировщик парсера Frida, затем обновляет ту же карту контекста, передачу, граф и отчёт исследования на месте. `/binary investigate --active` сначала составляет карту и запускает реальную фаззинг-кампанию только тогда, когда существует конкретная граница харнеса; для приложений, DLL и драйверов вместо этого выполняется шаг харнеса или снимка. `/binary harness` записывает спецификацию харнеса с подтверждением доказательств для выбранного входа и выдает исходники-кандидаты только тогда, когда ABI или контракт IOCTL является явным. Он не блефует, переходя от «существует `memcpy`» к «это эксплуатируемо»: импорты, селекторы и рёбра вызовов остаются кандидатами, пока что-то механическое не докажет больше. См. `docs/binary-analysis.md`.

## Анализ состава программного обеспечения

`/sca` анализирует зависимости и сторону цепочки поставок проекта. Это не просто поиск CVE по файлу requirements: RAPTOR обнаруживает манифесты, файлы блокировок, встроенные команды установки, зависимости рабочих процессов и источники пакетов контейнеров/базовых образов, затем нормализует их в единое представление зависимостей.

Сканирование обогащает зависимости консультациями OSV, CISA KEV, EPSS, CISA Vulnrichment/SSVC, достижимостью, сигналами доказательств эксплуатации, проверками гигиены, эвристиками цепочки поставок, выводами о политике лицензирования и опциональным обзором/сортировкой LLM. Оно выдаёт собственные находки RAPTOR, а также SBOM и вывод, удобный для CI:

- `findings.json` — канонические находки RAPTOR
- `report.md` — читаемая человеком сводка
- `sbom.cdx.json` — CycloneDX SBOM с данными VEX
- `findings.sarif` — вывод сканирования кода GitHub/GitLab

Типовые команды:```bash
python3 raptor.py sca --repo /path/to/project
python3 raptor.py sca --repo /path/to/project --no-llm
python3 raptor.py sca --repo /path/to/project --fail-on-severity high --fail-on-kev
python3 raptor.py sca --repo /path/to/project fix
python3 raptor.py sca check PyPI django 4.2.10

Полезные подкоманды включают fix, check, upgrade, diff, verify, health, render, suppress и clean-cache. Полный справочник см. в docs/sca.md.


Интеграция с Z3 SMT

RAPTOR имеет двухуровневую интеграцию с Z3 (pip install z3-solver). Она опциональна. Всё работает и без неё, но результаты лучше с ней.

Предварительная проверка потоков данных (CodeQL)

Когда CodeQL выдаёт результат в виде пути, ограничения этого пути проверяются на выполнимость до любого вызова LLM. Пути, которые заведомо недостижимы, сразу отбрасываются. Для достижимых путей Z3 генерирует конкретные возможные входные данные, которые попадают в промпт анализа, чтобы LLM могла рассуждать о чём-то конкретном, а не об абстрактных шаблонах.

Анализ ограничений one-gadget (бинарная реализуемость)

При оценке реализуемости бинарного эксплойта Z3 проверяет, выполнимы ли ограничения на регистры и память one-gadget для конкретного состояния краха. Гаджеты ранжируются по фактической достижимости, а не по эвристикам, так что вы тратите время на гаджеты, которые действительно могут сработать.

Z3 предустановлен в devcontainer. Для ручной установки: pip install z3-solver.


orjson (опционально)

Когда orjson установлен (pip install orjson), RAPTOR использует его для всего разбора и сериализации JSON. Ускорение важно для больших инвентаризаций и наборов найденных уязвимостей. Без него всё работает идентично через stdlib json — переключение прозрачно.


Работа в офлайн-режиме и в изолированных контурах

Пользовательские правила RAPTOR в engine/semgrep/rules/ полностью локальны и работают без доступа к сети.

Для пакетов из реестра (p/security-audit, p/owasp-top-ten и т.д.) каталог кэша поставляется пустым. Инструмент кэширования (engine/semgrep/tools/cache-packs.py) занимается его заполнением:```bash

On a connected machine — update the local cache directly:

python3 engine/semgrep/tools/cache-packs.py update

Or fetch into a zip bundle for airgap transfer:

python3 engine/semgrep/tools/cache-packs.py fetch

→ produces semgrep-cache-YYYY-MM-DD.zip

On the airgapped machine — import the bundle:

python3 engine/semgrep/tools/cache-packs.py import semgrep-cache-2026-07-16.zip

Check what's cached:

python3 engine/semgrep/tools/cache-packs.py list

root@kitploit:~
После заполнения сканер сопоставляет идентификаторы пакетов с локальными файлами, и сетевые вызовы не выполняются. Без кеша RAPTOR попытается загрузить пакеты реестра с semgrep.dev во время сканирования; при отсутствии сети он корректно отбрасывает некэшированные пакеты и запускается только с пользовательскими правилами.

CodeQL требует доступ к сети только во время начальной настройки для загрузки CLI и пакетов запросов. После установки он работает в офлайн-режиме.

---

## Пользовательские правила

RAPTOR включает 185 пользовательских правил статического анализа, проверенных на ложные срабатывания методом состязательного тестирования:

- **Semgrep (123 правила)** — правила отслеживания и поиска уязвимостей для Python, Go, Java и JS/TS. Охватывают SQLi, XSS, SSRF, SSTI, внедрение команд, десериализацию, XXE, внедрение LDAP/NoSQL, path traversal, open redirect, внедрение в логи/заголовки, eval-инъекцию, ReDoS, загрязнение прототипа, неправильную конфигурацию JWT, слабую криптографию, небезопасный TLS и жестко закодированные секреты.
- **Coccinelle (54 правила)** — структурное сопоставление для C/C++. Безопасность памяти (двойное освобождение, использование после освобождения, освобождение небазового указателя, освобождение стекового массива, mmap-память, использование после закрытия), ошибки целых чисел (переполнение, расширение знака, двойной sizeof), утечки ресурсов (несовпадение popen/fclose, двойное закрытие fdopendir), обработка буферов (strncpy без NUL, несоответствие размера copy_user, off-by-one в malloc/strlen), безопасность обработчиков сигналов, неправильное использование API (область флагов fcntl, SIGKILL/SIGSTOP, двойная перестановка байтов, статический буфер inet_ntoa), удаление мертвых переменных компилятором, путаница IS_ERR/PTR_ERR в ядре, внедрение строки формата, гонки TOCTOU и другое.
- **CodeQL (8 запросов)** — межпроцедурное отслеживание для C++ (внедрение строки формата, усечение целых чисел, использование после перемещения, инвалидация итератора) и Java (XXE, небезопасная десериализация, внедрение в логи, Spring SSRF).

Просматривайте правила напрямую: `engine/semgrep/rules/`, `engine/coccinelle/rules/`, `engine/codeql/queries/`. Они дополняют пакеты реестра (`p/security-audit`, `p/owasp-top-ten`, `p/0xdea`, `p/trailofbits`), которые предоставляют ещё около 950 правил — пересечение минимально.

---

## Использование другой LLM

В RAPTOR есть два отдельных уровня моделей, и важно понимать, как работают оба, прежде чем что-то менять.

**Уровень оркестрации** — это всегда Claude Code. Файл CLAUDE.md, навыки и команды работают как инструкции Claude Code. Чтобы изменить модель Claude, которая оркестрирует RAPTOR, используйте флаг `--model` Claude Code или команду `/model` внутри сессии.

**Уровень анализа и отправки** — это LLM, которая анализирует отдельные найденные уязвимости. Этот уровень не зависит от оркестрационного и может использовать любого поддерживаемого провайдера. Настройте его в `~/.config/raptor/models.json`:```json
{
  "models": [
    {
      "provider": "anthropic",
      "model": "claude-opus-4-6",
      "api_key": "sk-ant-...",
      "role": "analysis"
    },
    {
      "provider": "openai",
      "model": "gpt-5.4",
      "api_key": "sk-...",
      "role": "analysis"
    },
    {
      "provider": "anthropic",
      "model": "claude-sonnet-4-6",
      "api_key": "sk-ant-...",
      "role": "aggregate"
    }
  ]
}

Или пропустите конфигурационный файл и установите переменные окружения. RAPTOR обнаружит их автоматически:```bash export ANTHROPIC_API_KEY=sk-ant-... # Anthropic Claude export OPENAI_API_KEY=sk-... # OpenAI export GEMINI_API_KEY=... # Google Gemini export MISTRAL_API_KEY=... # Mistral export OLLAMA_HOST=http://localhost:11434 # Local Ollama

root@kitploit:~
| Role | What it does |
|------|-------------|
| `analysis` | Проверяет и анализирует каждое обнаружение (этапы A-F) |
| `code` | Пишет PoC-эксплойты и код исправлений |
| `consensus` | Голосование второго мнения по истинно-положительным результатам |
| `aggregate` | Опционально. Нарративный синтез, написанный LLM, поверх детерминистической многомодельной корреляции, записывается в `aggregation.json` и финальный `agentic-report.md` |
| `fallback` | Используется, если основная модель не срабатывает или достигает лимитов частоты запросов |

Если роли не заданы, первая модель в списке обрабатывает всё. Для многомодельного анализа исходного кода настройте две или более моделей `analysis` — по умолчанию вы получите детерминистическую корреляцию. Роль `aggregate` необязательна и добавляет сводку, написанную LLM, поверх:```bash
python3 raptor.py agentic --repo /code \
  --model claude-opus-4-6 \
  --model gpt-5.4 \
  --aggregate claude-sonnet-4-6

Контроль бюджета:```bash

Cap analysis-layer LLM spend at $5 for this run (default: $10)

python3 raptor.py agentic --repo /code --max-cost-usd 5.00

root@kitploit:~
Ollama подходит для анализа, но генерирует ненадёжный код эксплойтов и исправлений. Для задач генерации кода используйте frontier-модель.

### Быстрый уровень короткого замыкания + оценочная карта модели

Когда ваша модель уровня анализа имеет более дешёвую модель того же провайдера (Anthropic Opus → Haiku, OpenAI 5.x → 4o-mini, Gemini Pro → Flash-Lite, Mistral Large → Small), RAPTOR будет использовать её в качестве предварительного фильтра для потребителей, которые подключаются к субстрату (сегодня codeql; SCA и другие доработки появятся позже). Дешёвая модель всегда срабатывает только на **уверенных ложных срабатываниях**; неоднозначные случаи и уверенные истинные срабатывания всегда проходят полный анализ. Доверие накапливается по каждой ячейке `(model, decision_class)` — RAPTOR записывает согласованность дешёвого и полного анализа и срабатывает только тогда, когда верхняя граница 95% Уилсона для доли пропусков в ячейке опускается до 5% или ниже.

Чтобы посмотреть, в чём хороши ваши модели, используйте `/scorecard` (или напрямую: `libexec/raptor-llm-scorecard list`). Оценочная карта глобальна (уроки переносятся между проектами) и сохраняется в `out/llm_scorecard.json`.

---

## Проекты

Без проекта каждый запуск получает собственную папку с временной меткой в `out/`. С проектом всё помещается в одно место, и вы получаете объединённые результаты, отслеживание покрытия и различия между запусками.```bash
/project create myapp --target /path/to/code -d "Short description"
/project use myapp

/scan
/understand --map
/validate

/project status                # all runs, pass/fail, timestamps
/project findings              # merged findings across all runs
/project findings --detailed   # per-finding detail
/project coverage --detailed   # which files were reviewed
/project diff myapp run1 run2  # compare two runs
/project report                # full merged report
/project clean --keep 3        # remove old runs, keep the last 3
/project export myapp /tmp/myapp.zip
/project none                  # clear active project

Архитектура

RAPTOR состоит из двух уровней.

Слой выполнения на Python (raptor.py, packages/, core/, engine/) выполняет основную работу: запуск Semgrep и CodeQL, управление подпроцессами, разбор SARIF, дедупликацию находок, отправку вызовов LLM API, отслеживание затрат, запись выходных файлов. Он не принимает решений. Он выполняет.

Слой принятия решений Claude Code (.claude/, tiers/, CLAUDE.md) принимает решения: какие находки приоритизировать, как интерпретировать результаты, каков сценарий атаки, реалистичен ли эксплойт. Реализован как навыки, команды и агенты Claude Code, которые загружаются постепенно.``` CLAUDE.md always loaded -- bootstrap, routing, security rules .claude/commands/ slash commands (/agentic, /scan, /validate, etc.) .claude/skills/ methodology detail, loaded on demand tiers/ adversarial thinking, recovery, expert personas .claude/agents/ specialist sub-agents (offsec, crash analysis, forensics)

root@kitploit:~
Разделение означает, что вы можете запускать Python-уровень из CI-пайплайна (`python3 raptor.py scan --repo ...`) и получать структурированный вывод SARIF без Claude Code, либо запускать его интерактивно с полным агентным рабочим процессом.

---

## OSS-форензика

`/oss-forensics` исследует публичные репозитории GitHub, используя доказательства из нескольких источников: GitHub API, GH Archive (неизменяемая история событий через BigQuery), Wayback Machine и локальная история git. Он выполняет структурированный конвейер от сбора доказательств через формирование гипотез до финального отчета по форензике.

Требуется `GOOGLE_APPLICATION_CREDENTIALS` для доступа к BigQuery. Подробности см. в `.claude/commands/oss-forensics.md`.

---

## Экспертные персоны

Семь экспертных персон доступны по запросу. Загрузите одну, когда вам понадобится другой взгляд на результат или конкретную методику:```
Exploit Developer (Mark Dowd)                  Exploit PoC generation
Crash Analyst (Charlie Miller / Halvar Flake)  Crash analysis and exploitability assessment
Security Researcher                            General adversarial code review
Patch Engineer                                 Secure fix generation
Penetration Tester                             Realistic attack scenario assessment
Fuzzing Strategist                             Corpus design and triage
Binary Exploitation Specialist                 ROP, heap, and memory corruption

Скажите Клоду, какой использовать, например: "Используйте специалиста по бинарной эксплуатации".


Документация

См. полный указатель в docs/README.md. Основные руководства:


Вклад в проект

RAPTOR — это open source. Хорошие места для начала, если вы хотите внести свой вклад:

  • Полноценный модуль веб-эксплуатации (текущий — заглушка)
  • Охват правил SSRF для фреймворков, управляемых аннотациями (Spring @RequestParam, FastAPI типизированные параметры) — semgrep не может сопоставить эти источники, поэтому альтернативные подходы приветствуются
  • Генерация сигнатур YARA
  • Портирование на другие ИИ-инструменты для кодирования (Cursor, Windsurf, Copilot, Cline)
  • Улучшение охвата анализа прошивок
  • Всё, что, по вашему мнению, отсутствует

Релизы помечаются как vX.Y.Z и автоматически собираются CI. Префиксы коммитов определяют, что попадает в журнал изменений: feat: для новых функций, fix: для исправлений ошибок, security: для изменений безопасности, docs: для документации. Всё без префикса попадает в «Другие изменения». Строгой конвенции не требуется, но это помогает.

Отправляйте pull request'ы. Общайтесь с нами в канале #raptor в Slack-сообществе Prompt||GTFO: https://join.slack.com/t/promptgtfo/shared_invite/zt-3v2b4sll3-SfyzFRw2lykx_XQX7F3uNQ


Лицензия

MIT -- Copyright (c) 2025-2026 Gadi Evron, Daniel Cuthbert, Thomas Dullien (Halvar Flake), Michael Bargury, John Cartwright.

См. полный текст в LICENSE. Перед коммерческим использованием проверьте лицензии всех зависимостей — CodeQL в частности не разрешает этого.

Issues: https://github.com/gadievron/raptor/issues

Скачать инструмент
ФайлСодержание
docs/commands.mdПолный справочник слеш-команд со всеми флагами
docs/architecture.mdСтруктура кодовой базы и дерево каталогов
docs/llm.mdКонфигурация LLM-провайдеров, Bedrock, многомодельные рабочие процессы
docs/sandbox.mdИзоляция процессов: профили, Landlock, пространства имён
docs/validation.mdКонвейер проверки эксплуатируемости (этапы 0–1)
docs/static-analysis.mdПравила Semgrep и Coccinelle
docs/codeql.mdИнтеграция CodeQL и автономный анализ
docs/binary-analysis.mdБинарный оракул, /binary, осуществимость эксплуатации
docs/fuzzing.mdAFL++ и libFuzzer
docs/crash-analysis.mdАвтономный анализ первопричины сбоев
docs/sca.mdАнализ состава программного обеспечения
docs/frida.mdДинамическая инструментация
docs/security.mdСобственная модель безопасности RAPTOR
docs/threat-model.mdФункция модели угроз для каждого проекта
docs/python-cli.mdСправочник Python CLI для скриптования и CI
docs/concepts.mdКлючевые концепции: двухуровневая модель, жизненный цикл находок, выбор команды
docs/agentic.mdАвтономный рабочий процесс: конвейер /agentic, флаги обогащения, многомодельность
docs/dependencies.mdВнешние инструменты, версии и лицензии
tiers/personas/README.mdСправочник экспертных персон