
burp-ai-agent v1.0.0
Расширение Burp Suite, которое добавляет встроенные инструменты MCP, анализ с помощью ИИ, контроль конфиденциальности, пассивное и активное сканирование и многое другое
Custom AI Agent
Мост между Burp Suite и современным ИИ.
Примечание о названии: Это расширение публикуется как Custom AI Agent (ранее Burp AI Agent). Оно было переименовано для соответствия требованиям BApp Store от PortSwigger и во избежание путаницы со встроенным провайдером Burp AI в Burp Suite. Репозиторий GitHub (
github.com/six2dez/burp-ai-agent), сайт документации (burp-ai-agent.six2dez.com) и каталог конфигурации (~/.burp-ai-agent/) сохраняют идентификаторburp-ai-agentдля непрерывности.

Custom AI Agent — это расширение для Burp Suite, интегрирующее ИИ в ваш рабочий процесс по безопасности. Используйте локальные модели или облачных провайдеров, подключайте внешних ИИ-агентов через MCP и позволяйте пассивным/активным сканерам находить уязвимости, пока вы сосредоточены на ручном тестировании.
Что нового в v0.9.0
- Собственный Anthropic бэкенд (CAP-01) — прямой доступ к Anthropic Messages API через HTTP-транспорт Burp; весь трафик отображается в истории Proxy.
- AES-256-GCM для секретов в состоянии покоя (SEC-01) — все хранящиеся API-ключи и токены шифруются с помощью ключа, генерируемого для каждой установки, через
javax.crypto. Главный ключ хранится в Burp Preferences рядом с шифротекстом, поэтому это защищает от случайного просмотра файла настроек, но не от локального злоумышленника — см. Примечания о конфиденциальности и безопасности. - Настоящая анонимизация хостов на основе HKDF (PRIV-01) — режим STRICT теперь использует подлинные HMAC-SHA256 extract/expand (а не SHA-256 с солью) для анонимизации хостов.
- Редактирование тела запроса/ответа + пользовательские шаблоны (PRIV-02) — конвейер редактирования охватывает поля тела и настраиваемые пользователем regex-шаблоны, проверенные на ReDoS.
- Сторожевая проверка секретов перед отправкой (PRIV-03) — предупреждает перед тем, как значения с высокой энтропией покинут Burp; действия из разрешённого списка записываются в журнал аудита.
- Внешние MCP-серверы (CAP-02) — подключайтесь к внешним/пользовательским MCP-серверам (SSE или stdio), чтобы ИИ-агенты могли вызывать свои инструменты наряду со встроенными инструментами Burp.
- Ограничения токенного бюджета на сеанс (CAP-04) —
BudgetGuardограничивает расходы пассивного сканера состояниями WARN/CAP/OFF; пассивный сканер автоматически приостанавливается при достижении жёсткого лимита.
Ключевые особенности
- 12 ИИ-бэкендов — Burp AI (встроенный), Anthropic, Ollama, LM Studio, NVIDIA NIM, Perplexity, Generic OpenAI-compatible, Gemini CLI, Claude CLI, Codex CLI, OpenCode CLI, Copilot CLI.
- 59 MCP-инструментов — Позволяет Claude Desktop (или любому MCP-клиенту) управлять Burp автономно (8 собственных ИИ-инструментов расширения в store-сборке, все 59 в полной сборке).
- MCP-доступ в рамках области — При желании можно ограничить каждый MCP-инструмент хостами, входящими в область, чтобы внешние ИИ-клиенты не могли обращаться через Burp к целям вне области.
- 62 класса уязвимостей — Пассивный и активный ИИ-сканеры для инъекций, аутентификации, криптографии и многого другого. Пассивный сканер работает как Burp
PassiveScanCheck(Burp Pro). - Установка из релизов — Скачайте JAR из Релизов. В BApp Store его нет: заявка открыта с января 2026 года.
- UI с учётом темы — Внутренняя дизайн-система оформляет панель настроек и автоматически меняет тему вместе с переключателем светлой/тёмной темы Burp.
- Burp Scan Skill — Используйте предпочитаемого ИИ-ассистента для кода (Claude Code, Gemini CLI, Codex и т.д.) в качестве сканера через MCP.
- 3 режима конфиденциальности — STRICT / BALANCED / OFF. Редактируйте конфиденциальные данные до того, как они покинут Burp.
- Библиотека пользовательских промптов — Сохраняйте свободные промпты для каждого контекста (HTTP-запрос или проблема сканера); запускайте их из контекстного меню или вводите разовые через
Custom…. - Журнал аудита — JSONL с хэшированием целостности SHA-256 для соответствия требованиям; каждый запуск помечается
promptSource/contextKindдля воспроизводимости.
Быстрый старт
1. Установка
Скачайте последний JAR из Релизов или соберите из исходников (Java 21):
git clone https://github.com/six2dez/burp-ai-agent.git
cd burp-ai-agent
# Full build (default, GitHub releases) — all 59 MCP tools
JAVA_HOME=/path/to/jdk-21 ./gradlew clean shadowJar
# Output: build/libs/Custom-AI-Agent-full-<version>.jar
# Store build (BApp Store submission) — 8 extension-native AI MCP tools only
JAVA_HOME=/path/to/jdk-21 ./gradlew clean shadowJar -PstoreBuild=true
# Output: build/libs/Custom-AI-Agent-<version>.jar
2. Загрузка в Burp
- Откройте Burp Suite (Community или Professional).
- Перейдите в Extensions > Installed > Add.
- Выберите Java в качестве типа расширения и укажите
.jarфайл.
Расширение регистрируется в Burp как Custom AI Agent (имя в списке Extensions и на вкладке Suite), чтобы отличать его от встроенного провайдера Burp AI.

3. Профили агентов
При первом запуске расширение автоматически устанавливает встроенные профили в ~/.burp-ai-agent/AGENTS/. Добавьте дополнительные *.md файлы в этот каталог, чтобы создать собственные профили.
4. Настройка бэкенда
Откройте вкладку AI Agent и перейдите в Settings. Выберите бэкенд:
| Бэкенд | Тип | Настройка |
|---|---|---|
| Burp AI (встроенный) | В процессе | Используйте встроенный ИИ Burp Suite Pro, если он доступен; дополнительная настройка не требуется. |
| Ollama | Локальный HTTP | Установите Ollama, выполните ollama serve, загрузите модель (ollama pull llama3.1). |
| LM Studio | Локальный HTTP | Установите LM Studio, загрузите модель, запустите сервер. |
| NVIDIA NIM | HTTP | Используйте конечную точку по умолчанию https://integrate.api.nvidia.com, укажите свой NVIDIA API-ключ и выберите модель, например moonshotai/kimi-k2.5. |
| Perplexity | HTTP | Используйте конечную точку по умолчанию https://api.perplexity.ai, укажите свой API-ключ pplx-... и выберите модель, например sonar, sonar-pro или sonar-reasoning. |
| Generic OpenAI-compatible | HTTP | Укажите базовый URL и модель для любого провайдера, совместимого с OpenAI. |
| Gemini CLI | Облачный CLI | Установите gemini, выполните gemini auth login. |
| Claude CLI | Облачный CLI | Установите claude, задайте ANTHROPIC_API_KEY или выполните claude login. |
| Codex CLI | Облачный CLI | Установите codex, задайте OPENAI_API_KEY. |
| OpenCode CLI | Облачный CLI | Установите opencode, настройте учётные данные провайдера. |
| Copilot CLI | Облачный CLI | Установите copilot и войдите в свою учётную запись GitHub. |
| Anthropic | Облачный API | Введите свой Anthropic API-ключ в настройках. API-трафик проходит через прокси Burp. См. docs/anthropic-backend.md. |
Для NVIDIA NIM бэкенд ожидает тот же поток в стиле chat-completions, что и размещённая конечная точка NVIDIA. Рабочая конфигурация:
Backend: NVIDIA NIM
Base URL: https://integrate.api.nvidia.com
Model: moonshotai/kimi-k2.5
API Key: <your nvapi token>
Оставьте дополнительные заголовки пустыми, если этого не требует ваш шлюз. Расширение отправляет запросы на /v1/chat/completions и автоматически использует настроенный bearer-токен.
5. Запустите первый анализ
- Просматривайте цель через Burp Proxy.
- Щёлкните правой кнопкой мыши по любому запросу в Proxy > HTTP History.
- Выберите Extensions > Custom AI Agent > Analyze this request.
- Откроется чат-сессия с ИИ-анализом.

6. Подключение Claude Desktop через MCP (опционально)
Включите MCP-сервер в Settings > MCP Server и добавьте это в конфигурацию Claude Desktop:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"burp-ai-agent": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--sse",
"http://127.0.0.1:9876/sse"
]
}
}
}
Требуется Node.js 18+. Если вы включите External Access, MCP-клиент должен отправлять
Authorization: Bearer <token>в каждом запросе.
Вы также можете зарегистрировать внешние или пользовательские MCP-серверы в Settings > MCP > External Servers (транспорты SSE или stdio). Токены аутентификации внешних серверов хранятся в зашифрованном виде, с оговоркой, описанной в Примечаниях о конфиденциальности и безопасности. Подробности настройки и примечания по безопасности см. в docs/external-mcp-servers.md.
Burp Scan Skill (ИИ-сканирование из терминала)
Навык burp-scan позволяет использовать любого ИИ-ассистента для кода (Claude Code, Gemini CLI, Codex и т.д.) в качестве сканера Burp из вашего терминала. Вместо встроенного ИИ плагина ваш терминальный ИИ становится механизмом рассуждений, а Burp предоставляет инструменты через MCP.
Что он включает
- Справочник MCP-инструментов (до всех 59 инструментов в полной сборке), организованный по действиям сканирования
- Протокол пассивного анализа (анализ трафика без отправки запросов)
- Библиотека полезных нагрузок для активного тестирования (200+ нагрузок для 62 классов уязвимостей с паттернами обнаружения)
- Сквозной процесс сканирования (scope -> passive -> active -> OOB -> report)
- Протокол создания проблем с сопоставлением серьёзности/уверенности
Установка для Claude Code
Скопируйте навык в каталог навыков Claude Code:
# Global (available in all projects)
cp -r skills/burp-scan ~/.claude/skills/burp-scan
# Or project-specific
cp -r skills/burp-scan .claude/skills/burp-scan
Затем используйте /burp-scan в Claude Code или позвольте ему запускаться автоматически, когда вы упоминаете сканирование Burp.
Установка для других ИИ-ассистентов
Навык — это отдельный Markdown-файл в skills/burp-scan/SKILL.md. Вы можете использовать его с любым ИИ-ассистентом, поддерживающим системные промпты или файлы контекста:
- Gemini CLI / Codex / OpenCode: добавьте как файл контекста или вставьте в системный промпт
- Пользовательские MCP-клиенты: включите содержимое навыка как системный контекст вместе с вашим MCP-подключением
- Любая LLM: файл самодостаточен — передайте его как контекст вместе с определениями ваших MCP-инструментов
Пример использования
You: Connect to Burp MCP at localhost:9876 and scan the proxy history for IDOR vulnerabilities
AI: [Uses proxy_http_history to pull traffic]
[Identifies endpoints with numeric IDs]
[Sends http1_request with ID+1, ID-1 payloads]
[Compares responses for different user data]
[Creates issue_create for confirmed IDOR]
Навык и встроенный сканер плагина дополняют друг друга: плагин выполняет автоматическое фоновое сканирование, а навык обеспечивает интерактивное сканирование под руководством аналитика из вашего терминала.
Документация
Полная документация доступна на burp-ai-agent.six2dez.com.
- Установка
- Быстрый старт
- Обзор интерфейса
- Профили агентов
- Пассивный сканер
- Активный сканер
- Обзор MCP
- Режимы конфиденциальности
- Справочник настроек
- Устранение неполадок
- Burp Scan Skill
Операционные руководства
- Усиление безопасности MCP
- Руководство по безопасности UI
- Устранение неполадок бэкенда
- Настройка бэкенда Anthropic
- Внешние MCP-серверы
Примечания о конфиденциальности и безопасности
- Секреты в состоянии покоя — что шифрование делает, а что нет. Все хранящиеся API-ключи и токены (Anthropic, MCP bearer-токен, пароль TLS-хранилища ключей и т.д.) шифруются с помощью AES-256-GCM с использованием случайного главного ключа для каждой установки (
SecretCipher). Этот главный ключ сам хранится в Burp Preferences в кодировке Base64 рядом с защищаемым им шифротекстом (настройкаsecret.master.key.v1). Любой, кто может прочитать ваши Burp Preferences, следовательно, также может прочитать ключ и расшифровать секреты. Это не защищает от локального злоумышленника или вредоносного процесса, работающего от вашего имени; рассматривайте это как обфускацию от случайного просмотра файла настроек или экспортированного проекта. Если учётные данные должны пережить эту модель угроз, храните их в выделенном хранилище секретов и вводите на каждый сеанс. - Вызовы инструментов, сгенерированные моделью, требуют вашего одобрения. Вызов инструмента, который расширение извлекает из вывода модели, не выполняется в Burp, пока вы не решите. Каждый инструмент имеет обязательный уровень безопасности: автоматический запуск (только чтение и ограниченный вывод), подтверждение с опцией Approve for session или подтверждение при каждом вызове. Имя инструмента, которое каталог не распознаёт, по умолчанию требует подтверждения каждый раз и никогда не выполняется автоматически, а внешние инструменты с пространством имён
ext:всегда требуют подтверждения каждого вызова. Решение отображается как карточка прямо в расшифровке чата, а не как модальный диалог, и каждое решение записывается — событие аудита плюс строка на вкладке Output в Burp, поскольку журнал аудита по умолчанию отключён. При отказе модели возвращается нейтральный результат «не авторизовано, не повторять», а не ошибка. Этот уровень независим от переключателя Unsafe Mode: Unsafe Mode определяет, может ли инструмент вообще запускаться, а уровень — может ли модель запускать его без запроса. Обоснование решения:DECISIONS.mdADR-15. Операционное руководство: docs/ui-safety-guide.md. - Режим конфиденциальности STRICT анонимизирует хосты с помощью настоящего HKDF (HMAC-SHA256 extract/expand). Режим BALANCED редактирует файлы cookie, токены и заголовки аутентификации. Режим OFF отправляет трафик как есть.
- Выходные данные внешних MCP-серверов оборачиваются в маркер границы доверия перед попаданием в ИИ-промпт, предотвращая prompt-инъекции из недоверенных ответов серверов.
Настройки внутренне версионируются схемой (settings.schema.version) и при загрузке аддитивно мигрируются для безопасных обновлений.
Требования
- Burp Suite Community или Professional (2023.12+)
- Java 21 (входит в современный Burp для выполнения; требуется отдельно для сборки из исходников)
- Настроен хотя бы один ИИ-бэкенд (см. таблицу выше)
Лицензия
Этот проект распространяется под лицензией MIT.
Отказ от ответственности
Использование Custom AI Agent для атак на цели без предварительного согласия незаконно. Пользователь несёт ответственность за соблюдение всех применимых законов. Разработчики не несут ответственности за неправильное использование или ущерб, причинённый этим инструментом. Используйте ответственно.
Участие в разработке
Приветствуются issue и pull request. Информацию о настройке разработки и рекомендациях см. в CONTRIBUTING.md, а подробности архитектуры — в Документации для разработчиков.