
Обнаружение уязвимостей на основе ИИ и живая валидация
Терминальный инструмент для поиска уязвимостей с помощью ИИ и живой проверки.

Большинство инструментов «ИИ-безопасности» останавливаются на маркировке кода, который выглядит уязвимым. RedAI идет дальше: после того, как агенты-сканеры создают кандидатные находки, агенты-валидаторы работают внутри живой среды — работающего экземпляра цели, а также любых инструментов, необходимых для взаимодействия с ней — и пытаются подтвердить или опровергнуть каждую находку до того, как она появится в отчете. Они щёлкают по интерфейсу, обращаются к конечным точкам, пишут PoC-скрипты, запускают вспомогательные серверы и сохраняют доказательства.
Среда — это плагин. RedAI поставляется с двумя — реальный браузер Chrome и симулятор iOS — и вы можете написать свою собственную (виртуальная машина Linux, эмулятор Android, кластер Kubernetes, прокладка для встроенного устройства), реализовав небольшой интерфейс.
По завершении прогона вы получаете подробный отчет (Markdown, HTML и JSON) с находками, отсортированными по степени серьезности, пошаговыми инструкциями по воспроизведению для каждой находки, вердиктом валидатора (подтверждено, опровергнуто или невозможно проверить) и фактическими доказательствами, собранными агентами — PoC-скриптами, HTTP-транскриптами, журналами и скриншотами — так что каждая подтвержденная находка сопровождается доказательствами, а не просто утверждением. См. examples/webapp/example-report.md или examples/iosapp/example-report.md для реальных примеров.
Только для авторизованного использования. Используйте RedAI только на программном обеспечении и в средах, которые вам принадлежат или которые вы уполномочены проверять. Результаты работы агентов могут быть неполными или ошибочными — проверяйте находки и доказательства, прежде чем действовать на их основе.
Репозиторий поставляется с двумя намеренно уязвимыми демонстрационными приложениями, чтобы вы могли увидеть RedAI в действии от начала до конца, не направляя его на свой код: examples/webapp для среды браузера и examples/iosapp для среды симулятора iOS.
# 1. install RedAI
bun install -g @kpolley/redai
# 2. start the demo target in one terminal
cd examples/webapp && bun run dev # http://localhost:3000
# 3. start RedAI in another terminal
redai
В RedAI создайте среду браузера, указав http://localhost:3000, один раз войдите с exampleuser / examplepassword, отметьте её как готовую, затем запустите сканирование против examples/webapp. Наблюдайте, как валидаторы управляют Chrome для подтверждения реальных находок.
Полный отчет реального сканирования этого приложения находится в examples/webapp/example-report.md — GitHub отображает его встроенным, так что вы можете увидеть, что выдаёт RedAI, не запуская его.
Из npm:
bun install -g @kpolley/redai
redai
Или из локальной копии:
git clone https://github.com/kpolley/redai.git
cd redai
bun install
bun run redai
RedAI читает .env из рабочего каталога, когда требуются учётные данные; существующие переменные окружения оболочки имеют приоритет.
Требуется только один ключ сканера — установите тот, который соответствует планируемому сканеру.
# Claude (pick one)
ANTHROPIC_API_KEY=...
# or Codex
OPENAI_API_KEY=...
Для сканирования нужны две вещи: исходная директория и готовая среда валидации — то есть работающая цель, с которой будут взаимодействовать агенты-валидаторы (одна из встроенных сред или добавленная вами).
ready.Агенты-сканеры сортируют и исследуют исходный код; агенты-валидаторы берут находки, выглядящие как подтверждённые, и проверяют их в живой среде. Отчет записывается в ~/.redai/runs/<runId>/report.md (и .html) по завершении сканирования.
См. src/tui/README.md для сочетаний клавиш.
Каждое сканирование проходит три фазы:
confirmed, unable-to-test или disproved.~/.redai/runs/<runId>/.Полный конвейер из девяти этапов (предварительная проверка, модель угроз, приоритезация файлов, единицы анализа, сканирование единиц, агрегация находок, план проверки, выполнение проверки, составление отчета) описан в src/pipeline/README.md.
Среда валидации — это всё, что нужно агенту-валидатору для взаимодействия с работающим экземпляром цели. RedAI рассматривает среды как плагины: каждая реализует небольшой интерфейс из src/validators/validator-plugin.ts, обрабатывает собственный запуск/остановку и предоставляет агентам инструменты, которые должны быть доступны внутри неё.
Новые сканирования могут использовать только среды, отмеченные как ready. Когда сканирование запущено, валидаторы делают всё, что предусмотрено планом — управляют интерфейсом, выполняют команды оболочки, пишут PoC-скрипты, запускают вспомогательные серверы, собирают журналы, сохраняют скриншоты. Всё это попадает в ~/.redai/runs/<runId>/artifacts/.

Две среды поставляются в комплекте как эталонные реализации:
agent-browser. См. src/validators/web-agent-browser/README.md.xcrun simctl. См. src/validators/ios-simulator/README.md.Хотите провести валидацию против виртуальной машины Linux, эмулятора Android, удалённого кластера для этапа подготовки или чего-то более экзотического? Добавьте плагин — с тем же интерфейсом, что и два встроенных.
RedAI записывает локальное состояние в ~/.redai/ (можно переопределить с помощью REDAI_HOME). Эти файлы могут содержать промпты, полученные из исходного кода, транскрипты агентов, отчёты, доказательства, учётные данные, профили браузеров и метаданные симулятора.
Структуру каталогов см. в src/pipeline/README.md.
Команды, структура кода и соглашения проекта описаны в AGENTS.md. О внутреннем устройстве конвейера см. src/pipeline/README.md; о добавлении новой среды валидации см. src/validators/validator-plugin.ts.
MIT — см. LICENSE.
| Область | Требование |
|---|
| Ядро | Bun ≥ 1.2, читаемая исходная директория |
| Сканер (выберите один) | Claude: ANTHROPIC_API_KEY, CLAUDE_CODE_USE_BEDROCK, или CLAUDE_CODE_USE_VERTEX — или — Codex: OPENAI_API_KEY или CODEX_API_KEY |
| Валидатор браузера | Chrome, agent-browser, .agents/skills/agent-browser в целевой рабочей области |
| Валидатор iOS | macOS, инструменты командной строки Xcode, xcrun simctl, приложение, совместимое с симулятором (или установленный bundle ID), .agents/skills/ios-simulator-skill в целевой рабочей области |