
Совместное тестирование безопасности приложений между людьми и агентами через CLI и MCP
Инструменты тестирования безопасности приложений на основе MCP для вашего агента-программиста.
Это не сканер — это совместная рабочая среда. Агенты плохо справляются с UI и API с сохранением состояния; вы хороши в обоих. Sectool позволяет вам исследовать приложение через его прокси, пока агент анализирует и манипулирует тем же аутентифицированным трафиком, который вы генерируете.
Вы занимаетесь аутентификацией и взаимодействием с UI, агент запрашивает потоки, модифицирует запросы, находит отражения, отслеживает внешние взаимодействия и пробует другие перестановки. Объединение ваших возможностей упрощает рутинные задачи, снижает вероятность пропустить скрытые индикаторы и делает сложное тестирование более тщательным.
go install github.com/go-appsec/toolbox/sectool@latest
Нет Go? Скачайте бинарный файл для вашей платформы (Linux, macOS, Windows — amd64 и arm64) из последнего релиза.
sectool mcp
Это запускает сервер MCP на порту 9119 со встроенным HTTP-прокси на порту 8080.
Укажите в настройках прокси вашего браузера 127.0.0.1:8080 (или порт, заданный через --proxy-port).
Для перехвата HTTPS установите CA-сертификат из ~/.sectool/ca.pem (автоматически создаётся при первом запуске). Большинство браузеров принимают его через свои настройки сертификатов; на macOS вы также можете добавить его в системную связку ключей.
Используете Burp? Вместо этого следуйте настройке прокси Burp, затем запустите sectool с sectool mcp --burp.
Claude Code:
claude mcp add --transport http sectool http://127.0.0.1:9119/mcp
Codex (~/.codex/config.toml):
[mcp_servers.sectool]
url = "http://127.0.0.1:9119/mcp"
Работайте с агентом над составлением плана тестирования и выполняйте его вместе. Агент может запрашивать историю прокси, воспроизводить модифицированные запросы, сканировать эндпоинты и тестировать внешние взаимодействия, пока вы выполняете действия в браузере, такие как аутентификация или взаимодействие с UI и его проверка.
Нативный: Встроенный прокси с точностью до провода и поддержкой HTTP/1.1, HTTP/2 и WebSocket. Разработан, чтобы быть столь же функциональным, как Burp, для MITM-тестирования. Единый бинарный файл предоставляет сервер MCP, прокси и CLI — полностью самодостаточный и пригодный для использования в headless-средах.
Burp (опционально): Если вы предпочитаете GUI для просмотра действий агента или у вас уже запущен Burp, установите расширение MCP из BApp Store и убедитесь, что сервер MCP работает на http://127.0.0.1:9876/.
| Опция | Описание |
|---|---|
| (по умолчанию) | Автоопределение: сначала пробует Burp MCP, при неудаче переключается на нативный прокси |
--proxy-port 8080 | Принудительно использовать нативный прокси на указанном порту |
--burp | Принудительно использовать Burp MCP (завершается ошибкой, если недоступен) |
Sectool автоматически определяет подходящий рабочий процесс, когда агент вызывает инструмент workflow в начале сессии. Вы можете пропустить этот шаг и сэкономить токены, указав рабочий процесс заранее:
sectool mcp # По умолчанию: агент выбирает тип задачи через инструмент workflow
sectool mcp --workflow explore # Предустановленный режим исследования
sectool mcp --workflow test-report # Предустановленный режим валидации
sectool mcp --workflow none # Без инструкций рабочего процесса
sectool mcp --workflow multi # Несколько агентов используют один сервер
| Режим | Описание |
|---|---|
| (по умолчанию) | Агент выбирает тип задачи, вызывая инструмент workflow, и получает инструкции по совместной работе |
explore | Исследовательское тестирование безопасности; доступны все инструменты |
test-report | Валидация конкретного отчёта об уязвимости; инструменты сканирования исключены |
none | Без инструкций рабочего процесса, все инструменты доступны сразу |
multi | Для случаев, когда несколько пользователей или агентов используют один сервер; скрывает функции, где один агент может запутать другого |
Инструкции рабочего процесса направляют агентов к совместному тестированию, а не к попыткам сделать всё автономно или провести вас через процесс без добавления ценности. Если у вас есть идеи по улучшению совместной работы агентов, откройте issue.
Флаг --notes включает инструменты notes_save и notes_list для сохранения наблюдений, связанных с потоками. Отключено по умолчанию, чтобы минимизировать использование контекста для коротких сессий. Включайте его, когда ожидаете множество находок или сжатие диалога.
Сервер предоставляет две конечные точки:
/mcp - Streamable HTTP (рекомендуется)/sse - SSE (устаревший, для старых клиентов)CLI разделяет состояние с агентом и предоставляет удобный для человека интерфейс для просмотра, воспроизведения и написания скриптов. Все команды CLI соответствуют инструментам MCP, поэтому агент использует то же состояние.
# Просмотр того, что прокси захватил во время вашего просмотра
sectool proxy summary
sectool proxy list --host example.com
sectool proxy cookies --name session_id
# Сканирование приложения для обнаружения эндпоинтов и форм
sectool crawl create --url https://example.com
sectool crawl summary <session_id>
# Воспроизведение захваченного запроса с изменениями
sectool replay send --flow <flow_id> --set-header "X-Test: value"
# Настройка тестирования внешних взаимодействий и проверка обратных вызовов
sectool oast create
sectool oast poll <oast_id>
sectool oast get <event_id>
# Сравнение двух потоков, обнаружение отражений, проверка JWT
sectool diff <flow_a> <flow_b> --scope response
sectool reflected <flow_id>
sectool jwt <token>
# Экспорт потока, редактирование офлайн и повторная отправка
sectool proxy export <flow_id>
# ... отредактируйте ./sectool-requests/<flow_id>/request.http ...
sectool replay send --bundle <flow_id>
Используйте sectool <command> --help для подробных опций.