Назад к обновлениям
New releaseSep 4, 2026

pentest-ai v1.4.0

ИИ-пентестер с открытым исходным кодом, который доказывает каждую находку. Машинные оракулы повторно запускают каждый эксплойт; подтверждённые баги поставляются с доказательной капсулой, которую вы можете воспроизвести самостоятельно.

Поделиться

Pentest-AI: открытый AI-инструмент для пентеста. Находки, которые можно воспроизвести.

PyPI Python License: MIT

Сайт · Быстрый старт · Bug bounty · Верификация · Документация · Issues

Pentest-AI — это открытый инструмент для AI-пентеста и bug bounty, который отделяет подтверждённые находки от догадок. Он подключает AI-клиент или модель к реальному процессу пентеста: исследованию веб-приложений, обнаружению и воспроизведению уязвимостей и использованию машинных оракулов для проверки того, действительно ли работает эксплойт. Находка, которую не может доказать ни один оракул, остаётся помеченной как кандидат, а подтверждённая находка несёт в себе запросы и ответы, которые её доказали.

Используйте его через MCP (Claude Code, Codex, Cursor, VS Code), из CLI или в CI/CD. Модель ведёт исследование; независимый оракул решает, заслуживает ли находка вердикта «подтверждено», поэтому догадки модели никогда не подаются как результаты.

Создан для авторизованного bug bounty: один профиль на программу содержит её scope, заявленную ставку и ваш исследовательский псевдоним, пробный запуск показывает план до отправки чего-либо, а черновики отчётов создаются только из подтверждённых находок. Перейти к workflow bug bounty →

Тестируйте только те системы, которыми вы владеете или на оценку которых у вас есть явное разрешение. Прочитайте политику допустимого использования и условия перед началом работы.

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

Рекомендуется: Codex или Claude Code

Используйте Python 3.10–3.14 и сначала установите pipx. Выполните pipx ensurepath и при необходимости перезапустите терминал. pipx изолирует зависимости Pentest-AI и делает его команды доступными во всех папках.

pipx install ptai
ptai setup --mcp

Сначала установите CLI вашего AI-клиента. Мастер настройки запрашивает подтверждение перед подключением всех обнаруженных поддерживаемых клиентов, включая Codex и Claude Code, если они установлены. Он сохраняет существующие регистрации. После этого перезапустите ваш клиент.

Мастер использует пользовательские настройки. Он не устанавливает клиентов, не выполняет вход, не загружает модели и не настраивает Ollama. Модель предоставляет ваш AI-клиент; отдельный API-ключ для модели MCP-серверу не требуется. Используйте ptai setup --mcp --dry-run, чтобы предварительно просмотреть изменения. Инструкции по настройке для одного клиента и для отдельного репозитория (Codex .codex/config.toml и Claude Code .mcp.json) см. в разделе single-client and per-repository setup.

Для обновления используйте pipx upgrade ptai. В уже активированном виртуальном окружении также поддерживается python -m pip install --upgrade ptai; сохраняйте это окружение доступным после его регистрации в вашем AI-клиенте.

Альтернатива: Ollama и локальные модели

Установите Pentest-AI как описано выше, но пропустите настройку MCP для этого варианта. Установите и запустите Ollama, затем загрузите модель с поддержкой вызова инструментов. Используйте ollama list, чтобы узнать её точное установленное имя.

export PENTEST_AI_LLM_PROVIDER=ollama
export PENTEST_AI_MODEL="your-installed-model"
ptai start https://your-authorized-target.example --no-sync

В PowerShell:

$env:PENTEST_AI_LLM_PROVIDER = "ollama"
$env:PENTEST_AI_MODEL = "your-installed-model"
ptai start https://your-authorized-target.example --no-sync

Замените заполнители перед запуском. Локальной модели не требуется облачный API-ключ. Качество модели и доступная память влияют на результаты. См. руководство по моделям для настройки эндпоинта.

Попробуйте встроенную демонстрацию

API-ключ или внешняя цель не требуются.

pipx install ptai
ptai demo

Демо-версия тестирует встроенное уязвимое приложение, воспроизводит находку из его proof capsule и проверяет защищённые маршруты. Изучите рабочий процесс работы с доказательствами, прежде чем настраивать реальное взаимодействие.

Другие провайдеры моделей

Для автономных облачных моделей и дополнительных зависимостей сканера см. руководство по установке и руководство по провайдерам. Не храните API-ключи в системе контроля версий.

Автоматизация bug-bounty

Режим bug bounty предназначен для программ, допускающих автоматизированное тестирование. Вы пишете один профиль на программу с её областью действия, заявленной ставкой и вашим исследовательским идентификатором. Затем --program применяет всё это к каждому запросу, а --dry-run выводит план без отправки чего-либо.

# ~/.pentest-ai/programs/acme.toml
platform = "hackerone"
handle = "acme"
researcher = "your-h1-username"   # sent on every request in X-Bug-Bounty
rps = 5.0                         # the rate the program states
scope = ["*.acme.com", "api.acme.com"]
excluded = ["status.acme.com"]
scanners_allowed = true
allow_race = false
ptai start https://api.acme.com --program acme --dry-run    # sends nothing
ptai start https://api.acme.com --program acme --auto-auth
ptai bounty-report <engagement-id> --program acme --output-dir drafts/

В режиме --program:

  • Каждый запрос ограничен частотой программы, включая внешние инструменты. Инструмент, который невозможно удержать в рамках его доли частоты, пропускается, и сканирование сообщает об этом.
  • Область действия берётся из профиля и ниоткуда больше. Запросы за её пределами отклоняются, а исключения имеют приоритет над шаблонами подстановки.
  • Каждый запрос содержит ваш исследовательский идентификатор в X-Bug-Bounty или в заголовке, указанном программой (PTAI_BOUNTY_HEADER_NAME).
  • Инструменты на основе словарей, такие как gobuster и ffuf, отклоняются. Два встроенных поисковых зонда всё же пробуют список вероятных путей — около 500 запросов.
  • Полезные нагрузки, созданные для исчерпания ресурсов или падения цели, не отправляются. Зонды, изменяющие чужие учётные записи или общее состояние, не запускаются. Всплески для проверки состояния гонки запускаются только если в профиле задано allow_race = true.
  • 429 и Retry-After соблюдаются. Цель, которая замедляется, получает пониженную частоту, а цель, которая остаётся деградировавшей, останавливает сканирование с записью причины.
  • Программа, запрещающая сканеры, требует ввода yes, поскольку её сканирование может аннулировать безопасную гавань.

ptai bounty-report составляет черновики отчётов только по находкам, подтверждённым оракулом, с шагами воспроизведения, взятыми из собственных запросов оракула. Воспроизведите каждую вручную и отправьте сами. ptai bounty import преобразует экспортированный файл области действия программы в записи allow и exclude для профиля.

Категории