
Расширение Burp Suite для тестирования безопасности API с 15 типами атак, 108+ полезными нагрузками, интеллектуальным фаззингом, обнаружением BOLA/IDOR, интеграцией с ИИ и автоматизированной разведкой. Поддерживает REST/GraphQL/SOAP API с Nuclei, Turbo Intruder и интеграцией внешних инструментов. Покрытие OWASP API Top 10.
Если этот проект помогает вашей работе, поддержите текущее обслуживание и новые функции.
ETH-кошелёк для пожертвований
0x11282eE5726B3370c8B480e321b3B2aA13686582
Отсканируйте QR-код или скопируйте адрес кошелька выше.
Профессиональное расширение для Burp Suite для всесторонней разведки API, интеллектуального фаззинга и тестирования безопасности на основе ИИ.
BurpAPISecuritySuite объединяет функциональность, для которой обычно потребовалось бы 10+ отдельных расширений, в одно оптимизированное расширение. Это архитектурное решение обеспечивает значительные преимущества в производительности:
Эффективность использования памяти: Запуск нескольких расширений Burp одновременно создаёт существенную нагрузку на память. Каждое расширение поддерживает собственное состояние, компоненты пользовательского интерфейса и обработчики событий. Одно расширение с несколькими вкладками эффективно распределяет ресурсы и снижает общее потребление памяти.
Снижение накладных расходов API: API расширений Burp обрабатывает обратные вызовы от всех загруженных расширений. При наличии 10+ расширений каждый HTTP-запрос вызывает обратные вызовы во всех расширениях, создавая мультипликативную нагрузку. Одно расширение означает одну цепочку обратных вызовов, что значительно уменьшает количество циклов ЦП и повышает отзывчивость.
Общий контекст: Интегрированные вкладки используют общие данные захваченного трафика, устраняя избыточную обработку. Вкладка «Recon» захватывает данные один раз, а все остальные вкладки (Fuzzer, Auth Replay, Passive Discovery и т. д.) работают с тем же набором данных без повторного разбора запросов.
Более быстрый запуск: Загрузка одного расширения значительно быстрее, чем загрузка 10+ расширений. Burp инициализирует компоненты пользовательского интерфейса, регистрирует обратные вызовы и распределяет ресурсы один раз, а не многократно.
Лучшая стабильность: Меньше расширений — меньше потенциальных конфликтов, несоответствий версий и проблем совместимости. Одна кодовая база проще в тестировании, отладке и сопровождении.
Эта философия дизайна ставит во главу угла производительность и удобство использования, предоставляя при этом возможности тестирования безопасности API, которые в противном случае потребовали бы сложной многовендорной конфигурации.






Встроенный исполнитель для заполнения пробелов и глубокого поиска, откалиброванный для дополнения покрытия Nuclei/HTTPX/Katana.
Примечание: ApiHunter — это инструмент с открытым исходным кодом под лицензией MIT, важное дополнение к BurpAPISecuritySuite. Он предоставляет расширенные возможности разведки API, заполняя пробелы, оставляемые другими сканерами. См. https://github.com/Teycir/ApiHunter для установки и использования.








BurpAPISecuritySuite — это полный набор инструментов для тестирования безопасности API, который:
/users/123 → /users/{id})subfinder + dnsx + httpxBurpAPISecuritySuite.pyRecon для просмотра захваченных конечных точек и результатовPassive Discovery нажмите Run Differential для бесскоринговых контрфактуальных проверок, или Run Invariants для полного стека глубокой логикиRecon нажмите Refresh Invariants для обновления результатов дифференциалов + последовательности + golden + state matrix + цепочки токенов + анализа отклонений паритета перед экспортомRecon нажмите Export AI Bundle для генерации AI-контекста по всем вкладкамexcalibur-burp-bridge/v1 (Excalibur — проприетарный инструмент: https://github.com/Teycir/Excalibur)tool, method, host/path, status, len, type, tags).Max Memory (по умолчанию 20,000 строк).вкл/выкл).Grep Values..., и сохранённые рабочие процессы с регулярными выражениями ( + сохранённые фильтры).Name: valueCopy URL(s) (или правый клик Copy Selected URL(s)) для копирования полных URLResult, чтобы отсортировать по серьёзности, или используйте Sort Severity для быстрой сортировки CRITICAL -> HIGH -> MEDIUM -> OKAll или проверки по категориям (API3, API4, API5, API6, API9, API10)All Endpoints, Filtered View или текущую область хостаSelected Endpoint, Filtered View или All Endpoints.Proxy/Live Capture, Imported HAR/Replay или сканировать оба одновременно.All API Sensitive, Secrets & Tokens, PII & Financial, Credentials & Session, Infra/Internal Exposure.apihunter (по умолчанию автоматическое обнаружение ищет в PATH среды выполнения, затем зондирует оболочку (bash -lc и bash -ic) через command -v и копирует найденный абсолютный путь; статические запасные варианты отсутствуют)Run ApiHunter набор снова разрешает apihunter из PATH (процесс + зондирование оболочки) и автоматически обновляет поле до разрешённого абсолютного пути к бинарному файлу, если он доступенQuick (Desktop Preset), Balanced (Desktop Preset) (по умолчанию), Deep (Desktop Preset)Unauth Only, , (по умолчанию). В двухпроходном режиме дедуплицированные базовые URL разделяются на списки целей и ; каждый проход выполняется по своему списку. Ассоциация аутентификации использует как заголовки аутентификации запросов, так и сигналы аутентификации, не являющиеся заголовками (, маркеры токенов/куки/сессий в метаданных запроса).Unauth Only, Auth Only, Auth + Unauth (по умолчанию). В двухпроходном режиме дедуплицированные базовые URL разделяются на списки целей auth-associated и unauth-associated; каждый проход выполняется по своему списку. Ассоциация аутентификации использует как заголовки аутентификации запросов, так и сигналы аутентификации, не являющиеся заголовками (auth_detected, маркеры токенов/куки/сессий в метаданных запроса). Вывод контекста аутентификации захватывает наилучший доступный заголовок Authorization, основные заголовки, похожие на аутентификационные (X-API-Key, Api-Key, ApiKey, X-Auth-Token, X-Access-Token), и выводит пары куки из заголовков запроса.kr.kite или псевдоним Assetnote, например apiroutes-260227:20000Fast, Balanced, Deep — настройка сканирования маршрутов, по умолчанию выбрано Balanced для более широкого охвата при первом проходе; Fast сохраняет более жёсткий лимит в 10 минут для более быстрой триажа, а Deep тратит 15-минутный потолок на меньшее количество хостов с более полным сканированиемCustom Targets... вместо фильтрованной области Reconмакс. 20 записей, по одной на строку) со строгой санитацией и канонической нормализацией базового URL (scheme://host[:port]/)sqlmapFast, Balanced, Deep — пресеты настройки командdalfoxFast, Balanced, Deep — пресеты настройки командFast, Balanced, Deep — настройка этапов для subfinder/dnsx/httpxsubfinder → dnsx → httpx для обнаружения активных активов APIBOLA (Нарушение авторизации на уровне объектов)
IDOR (Небезопасная прямая ссылка на объект)
SQL-инъекции
XSS (Межсайтовый скриптинг)
NoSQL-инъекции
Эксплуатация JWT
Злоупотребление GraphQL
SSTI (Инъекция шаблонов на стороне сервера)
Состояния гонки
Бизнес-логика
Обход WAF
{ "metadata": { "timestamp": "20240115_143022", "total_endpoints": 15, "total_requests": 47 }, "endpoints": [ { "endpoint": "GET:/api/users/{id}", "method": "GET", "normalized_path": "/api/users/{id}", "host": "api.example.com", "sample_count": 3, "parameters": { "url": ["id"], "body": [], "cookie": ["session"], "json": [] }, "auth_methods": ["Bearer Token"], "response_codes": [200, 404], "content_types": ["application/json"], "api_patterns": ["REST API", "JSON API", "CRUD: GET"], "sample_requests": [...] } ], "api_structure": { "api_types": ["REST API", "JSON API"], "http_methods": ["GET", "POST", "PUT", "DELETE"], "auth_methods": ["Bearer Token", "API Key"], "base_paths": ["/api/", "/v1/"] }, "security_observations": [ { "type": "Potential IDOR/BOLA", "severity": "Critical", "count": 5, "examples": ["GET:/api/users/{id}", "GET:/api/orders/{id}"], "recommendation": "Implement object-level authorization checks" }, { "type": "Unauthenticated Endpoints", "severity": "High", "count": 3, "examples": ["GET:/api/health", "GET:/api/version"] }, { "type": "Weak Encryption (Base64)", "severity": "High", "count": 2, "examples": [{"endpoint": "POST:/api/auth", "types": ["Base64"]}], "recommendation": "Use proper encryption (AES-256, TLS 1.3)" } ], "llm_prompt": "# API Red Team Extension Generation\n\n..." }
## Данные и экспорт
### Что захватывается
### На конечную точку
- HTTP-метод и нормализованный путь
- Хост, протокол, порт
- Строка запроса и все типы параметров (URL, тело, cookie, JSON)
- Заголовки запроса/ответа
- Тела запроса/ответа (усечены до 20 КБ)
- Коды состояния ответа
- Типы содержимого
- Обнаруженные методы аутентификации
- Шаблоны API (REST, GraphQL, SOAP и т.д.)
### Анализ
- Обзор структуры API (типы, методы, аутентификация, базовые пути)
- Наблюдения по безопасности (неавторизованные конечные точки, конфиденциальные данные)
- Группировка и дедупликация конечных точек
- Примеры запросов для каждой конечной точки
## Интеграция
### Интеграция с подсказками LLM
Экспорт включает готовые к использованию с ИИ подсказки и контекст, отдающие приоритет:
1. Путям эксплуатации конфиденциальных данных (межаккаунтное/межтенантное раскрытие)
2. Неавторизованным изменениям состояния (злоупотребление рабочим процессом/жизненным циклом)
3. Неочевидным логическим ошибкам, а не дублирующимся общим находкам
4. Воспроизводимым дельтам доказательств и запросам с отсутствующими данными
Основные артефакты ИИ:
- `ai_bundle.json`
- `ai_all_tabs_context.json`
- `ai_openai_request.json`
- `ai_anthropic_request.json`
- `ai_ollama_request.json`
### Рабочий процесс с сопутствующим репозиторием (APIPentesting)
`BurpAPISecuritySuite` и `APIPentesting` спроектированы для совместного использования:
1. Захват и анализ трафика в BurpAPISecuritySuite.
2. В разделе `Recon` нажмите `Export AI Bundle`.
3. В APIPentesting выполните:
- `./scripts/scan-nuclei-prioritize.sh /path/to/ai_bundle.json <scan-name>`
4. Просмотрите `Reports/<scan-name>-<timestamp>/priority.json` и `results.jsonl`.
5. Используйте `scripts/AI_TRIAGE_PROMPT.md` (из APIPentesting) в своем ИИ-интерфейсе для триажа с приоритетом конфиденциальных данных.
Разделение владения:
- BurpAPISecuritySuite: захват, обогащение, анализ глубокой логики, упаковка ИИ/экспорта внутри Burp.
- APIPentesting: внешняя оркестрация сканирования, ранжирование и триаж эксплойтов с помощью ИИ.
## Примеры рабочих процессов
### 1. Генерация полезной нагрузки с помощью ИИ```bash
# 1. Capture API traffic in Burp
# 2. (Optional) Run Passive Discovery → "Run Invariants"
# 3. (Optional) In Recon, click "Refresh Invariants"
# 4. In Recon, click "Export AI Bundle"
# 5. Run APIPentesting scan from the exported bundle:
# ./scripts/scan-nuclei-prioritize.sh /path/to/ai_bundle.json burp-ai-scan
# 6. Feed Reports/.../priority.json + results.jsonl to AI with
# scripts/AI_TRIAGE_PROMPT.md for sensitive-data-first exploit triage.
### 3. Burp Intruder с автоматическими позициями```bash
# 1. Generate fuzzing attacks
# 2. Click "Send to Intruder"
# 3. Burp Intruder opens with §markers§ pre-configured
# 4. Load payloads from exported payloads.json
# 5. Launch attack
~/burp_APIRecon/ ├── FullExport_TIMESTAMP/ │ ├── api_analysis.json │ └── excalibur_bridge_bundle.json ├── HostExport_HOSTNAME_TIMESTAMP/ │ ├── api_analysis.json │ └── excalibur_bridge_bundle.json ├── Payloads_TIMESTAMP/ │ └── payloads.json (idor, sqli, xss, nosqli, ssrf, xxe, ssti, deserialization, waf_bypass) ├── AI_Context_TIMESTAMP/ │ ├── ai_context.json │ ├── ai_bundle.json │ ├── ai_all_tabs_context.json │ ├── ai_vulnerability_context.json │ ├── ai_behavioral_analysis.json │ ├── ai_counterfactual_differential_findings.json │ ├── ai_counterfactual_differential_summary.json │ ├── ai_sequence_invariant_findings.json │ ├── ai_sequence_evidence_ledger.json │ ├── ai_golden_ticket_findings.json │ ├── ai_golden_ticket_ledger.json │ ├── ai_state_transition_findings.json │ ├── ai_state_transition_ledger.json │ ├── ai_token_lineage_findings.json │ ├── ai_token_lineage_ledger.json │ ├── ai_parity_drift_findings.json │ ├── ai_parity_drift_ledger.json │ ├── ai_openai_request.json │ ├── ai_anthropic_request.json │ └── ai_ollama_request.json ├── SequenceInvariant_Export_TIMESTAMP/ │ ├── counterfactual_differential_findings.json │ ├── counterfactual_differential_summary.json │ ├── sequence_invariant_findings.json │ ├── sequence_evidence_ledger.json │ ├── golden_ticket_findings.json │ ├── golden_ticket_ledger.json │ ├── state_transition_findings.json │ ├── state_transition_ledger.json │ ├── token_lineage_findings.json │ ├── token_lineage_ledger.json │ ├── parity_drift_findings.json │ └── parity_drift_ledger.json ├── TurboIntruder_TIMESTAMP/ │ ├── race_condition.py │ ├── bola_enum.py │ └── jwt_brute.py ├── VersionScan_Export_TIMESTAMP/ │ └── version_scan.txt ├── ParamMiner_Export_TIMESTAMP/ │ └── param_mining.txt └── NucleiTargets_TIMESTAMP/ └── targets.txt
### Лучшие практики
### Этап разведки
- **Захват аутентифицированного трафика**: Сначала выполните вход, чтобы захватить защищённые конечные точки.
- **Задействуйте все функции**: Пройдите по всему приложению для полного охвата.
- **Используйте несколько ролей**: Захватывайте трафик как администратор, пользователь и гость для обнаружения BOLA.
- **Просматривайте статистику**: Проверяйте количество критических/высоких/средних результатов на панели статистики.
### Этап фаззинга
- **Начните с «All»**: Сначала сгенерируйте всеобъемлющую атаку.
- **Сосредоточьтесь на высокорисковых**: Отфильтруйте по уровню серьёзности для критических конечных точек.
- **Проверяйте обнаружения**: Просмотрите сгенерированные атаки перед отправкой в Intruder.
- **Пакетное тестирование**: Используйте Turbo Intruder для состояний гонки и высокоскоростного перебора.
### Интеграция с ИИ
- **Экспортируйте контекст как можно раньше**: Сгенерируйте контекст для ИИ сразу после первоначального захвата.
- **Запускайте + обновляйте инварианты перед экспортом**: Добавьте свежие доказательства глубокой логики (Differential + Sequence + Golden + State Matrix + Token Lineage + Parity Drift) перед отправкой данных в ИИ.
- **Итеративно дорабатывайте полезные нагрузки**: Используйте полезные нагрузки от ИИ, тестируйте, уточняйте промпт.
- **Комбинируйте техники**: Объединяйте полезные нагрузки от ИИ со встроенной библиотекой полезных нагрузок.
### Автоматизация
- **Интеграция с Nuclei**: Запускайте Nuclei для быстрой проверки уязвимостей.
- **Экспорт целей**: Используйте списки целей с ffuf, wfuzz или собственными скриптами.
- **Интеграция с CI/CD**: Автоматизируйте экспорт для регрессионного тестирования.
## Техническая информация
### Технические детали
- **Нормализация**: Заменяет числовые ID, UUID, ObjectID на плейсхолдеры.
- **Дедупликация**: Отслеживает уникальные конечные точки по методу + нормализованному пути.
- **Усечение**: Тела ограничены 20 КБ, образцы — не более 3 на конечную точку.
- **Обнаружение аутентификации**: Определяет Bearer, Basic, API Key, Session Cookie.
- **Сопоставление с шаблонами**: Обнаружение REST, GraphQL, SOAP на основе регулярных выражений.
### Ограничения
- Не захватывает WebSocket-трафик.
- Бинарные ответы анализируются не полностью.
- Большие ответы усекаются (ограничение 20 КБ).
- Требуется Jython (синтаксис Python 2.7).
## Варианты использования
- **Тестирование API на проникновение**: Всесторонний фаззинг с использованием 108+ векторов атак.
- **Охота за багами**: Автоматизированное обнаружение и эксплуатация BOLA/IDOR.
- **Исследования в области безопасности**: Продвинутые техники атак (состояния гонки, JWT, GraphQL).
- **Операции Red Team**: Скрипты Turbo Intruder для высокоскоростных атак.
- **Тестирование с помощью ИИ**: Генерация пользовательских полезных нагрузок с ChatGPT/Claude.
- **Безопасность в CI/CD**: Экспорт целей для автоматизированного регрессионного тестирования.
- **Обучение и образование**: Изучение уязвимостей API на реальных примерах.
## Документация
- [Полный указатель документации](https://github.com/teycir/burpapisecuritysuite/blob/HEAD/docs/DOCUMENTATION-INDEX.md)
- [Обзор архитектуры](https://github.com/teycir/burpapisecuritysuite/blob/HEAD/docs/Architecture.md)
- [Валидация фаззинга GraphQL](https://github.com/teycir/burpapisecuritysuite/blob/HEAD/docs/GRAPHQL_VALIDATION.md)
- [Справочник тегов Logger++](https://github.com/teycir/burpapisecuritysuite/blob/HEAD/docs/loggerpp_tags.md)
## FAQ
### Общие вопросы
**В: Работает ли это с Burp Suite Community Edition?**
О: Да! Все основные функции работают как с Community, так и с Professional редакциями. Однако некоторые продвинутые функции Burp, такие как интеграция со Scanner, требуют версии Pro.
**В: Почему расширение не захватывает трафик?**
О: Проверьте следующее:
- Переключатель Auto-Capture включен на вкладке Recon.
- Вы просматриваете сайты через прокси Burp.
- Цель передаёт HTTP/HTTPS трафик (WebSocket не поддерживается).
- Проверьте Activity Log на наличие сообщений об ошибках.
**В: Как установить Jython?**
О: Скачайте Jython Standalone JAR с https://www.jython.org/download, затем в Burp: Extender → Options → Python Environment → Select File → выберите файл jython-standalone-*.jar.
### Производительность и лимиты
**В: Сколько конечных точек может обрабатывать расширение?**
О: Расширение эффективно обрабатывает 500+ конечных точек с автоматическим циклическим удалением старых при достижении лимита (800). Старые конечные точки удаляются автоматически.
**В: Почему ответы усекаются до 20 КБ?**
О: Для предотвращения проблем с памятью при больших ответах с сохранением полезного контекста для анализа. Текущий лимит захвата тела ответа — 20 КБ.
**В: Можно ли увеличить количество образцов на конечную точку?**
О: Да, используйте выпадающий список «Samples» на вкладке Recon (1, 3, 5 или 10 образцов на конечную точку).
### Фаззинг и атаки
**В: Почему я не вижу атак BOLA/обхода аутентификации?**
О: Для этих атак требуются аутентифицированные конечные точки. Убедитесь, что:
- Вы вошли в приложение.
- Захватили трафик в аутентифицированном состоянии.
- Ищите конечные точки с Bearer-токенами, API-ключами или сессионными cookie.
**В: Как использовать сгенерированные атаки?**
О: Три способа:
1. **Burp Intruder**: Нажмите «Send to Intruder» для автоматического тестирования.
2. **Turbo Intruder**: Экспортируйте скрипты для высокоскоростных атак.
3. **Вручную**: Используйте «Copy as cURL» для тестирования из командной строки.
**В: В чём разница между «All» и конкретными типами атак?**
О: «All» генерирует всесторонние атаки по всем типам уязвимостей. Конкретные типы (например, «SQLi») сосредотачиваются только на данном классе уязвимостей для целенаправленного тестирования.
**В: Как эффективно тестировать конечные точки GraphQL?**
О: Трёхсторонний подход:
1. **Вкладка Fuzzer**: Выберите тип атаки «GraphQL» для 40+ полезных нагрузок, специфичных для GraphQL (introspection, batching, directive overloading, field suggestion).
2. **Вкладка Nuclei**: Запустите с `-tags graphql` для 29+ шаблонов, покрывающих неправильные конфигурации и обнаружение.
3. **Ручное тестирование**: Используйте «Copy as cURL» для ручного тестирования introspection, batching и атак на глубину.
Fuzzer автоматически обнаруживает конечные точки GraphQL и генерирует атаки для:
- Извлечения схемы через introspection.
- DoS через batching (array/alias) и атаки на глубину.
- Field suggestion для обнаружения схемы, если introspection отключён.
- Directive overloading (злоупотребление @skip, @include).
- DoS через циклические фрагменты.
- Неавторизованные мутации.
### Внешние инструменты
**В: Нужно ли устанавливать ApiHunter/Nuclei/HTTPX/Katana/FFUF/Kiterunner?**
О: Только если вы хотите использовать соответствующие вкладки. Основное расширение работает без них. Установка:
- ApiHunter: https://github.com/Teycir/ApiHunter (проприетарный инструмент — требует отдельной установки или локальной сборки в `~/Repos/ApiHunter`, затем сборка `target/release/apihunter`)
- Nuclei: https://github.com/projectdiscovery/nuclei
- HTTPX: https://github.com/projectdiscovery/httpx
- Katana: https://github.com/projectdiscovery/katana
- FFUF: https://github.com/ffuf/ffuf
- Kiterunner: https://github.com/assetnote/kiterunner
**В: Где должны быть установлены эти инструменты?**
О: Пути по умолчанию:
- `~/Repos/ApiHunter/target/release/apihunter`
- `~/go/bin/nuclei`
- `~/go/bin/httpx`
- `~/go/bin/katana`
- `~/go/bin/ffuf`
- `~/.local/bin/kr`
- В Windows стандартные пути: `C:\\Users\\<you>\\go\\bin\\*.exe`
Или настройте собственные пути на каждой вкладке. Теперь вкладки автоматически обнаруживают как Unix-стиль, так и Windows `*.exe` Go-бинарники при их наличии.
**В: Как работают пользовательские переопределения команд?**
О:
- Оставьте флажок `Enable Custom` снятым, чтобы использовать безопасные встроенные значения по умолчанию.
- Установите флажок `Enable Custom`, чтобы выполнять в точности то, что вы вводите в поле команды.
- Используйте `Preset Cmd...` для быстрой автозаполнения распространённых команд (по-прежнему требуется подтверждение, пока не установлен `Enable Custom`).
- Нажмите `?`, чтобы увидеть плейсхолдеры и примеры для каждой вкладки.
- Пользовательские команды выполняются с `cmd /c` в Windows и `bash/sh -lc` в Linux/macOS.
- Встроенные значения по умолчанию для HTTPX и Katana используют родные флаги списков файлов (`-l` / `-list`) для кроссплатформенного выполнения.
### Замечания по безопасности
- Режим пользовательских команд намеренно строгий и **требует явного включения** (должен быть установлен флажок `Enable Custom`).
- Введённые пользовательские команды проверяются на запрещённые фрагменты оболочки (например, конвейеры, перенаправление, синтаксис подстановки).
- В пользовательском режиме исполняемые файлы ограничены разрешённым списком для каждого инструмента (например, `nuclei`, `httpx`, `katana`, `waybackurls`/`gau`, `apihunter`, `subfinder`).
- Значения контекста плейсхолдеров очищаются перед рендерингом шаблона, а также доступны варианты в кавычках (`{targets_file_q}`, `{urls_file_q}` и т.д.) для более безопасной интерполяции путей.
- Если ваш рабочий процесс требует сложной логики оболочки за пределами этой политики, выполняйте такую команду вручную вне расширения.
**В: Почему HTTPX показывает ошибки о недопустимых параметрах?**
О:
- Убедитесь, что вы используете `httpx` от ProjectDiscovery, а не CLI-инструмент `httpx` для Python.
- Рекомендуемый путь: `~/go/bin/httpx`.
- Теперь расширение проверяет сигнатуры локального инструмента и показывает подсказку по исправлению при несоответствии.
**В: Как быстро заполнить заголовки Guest/User/Admin для Auth Replay?**
О:
- На вкладке `Auth Replay` нажмите `Extract` рядом с Guest/User/Admin.
- Откроется всплывающее окно с поиском по захваченным заголовкам-кандидатам.
- Отфильтруйте по тексту конечной точки, имени заголовка или фрагменту токена.
- Выберите один элемент и нажмите `OK`; поле будет заполнено в формате `Name: value`.
### Экспорт и интеграция
**В: Куда сохраняются экспортированные файлы?**
О: Все экспорты сохраняются в `~/burp_APIRecon/` с подкаталогами, содержащими временные метки. Точные пути можно найти в Activity Log.
**В: Как использовать экспорт контекста для ИИ?**
О:
1. (Опционально) Запустите `Passive Discovery` → `Run Invariants`.
2. (Опционально) На вкладке `Recon` нажмите `Refresh Invariants`.
3. На вкладке `Recon` нажмите `Export AI Bundle`.
4. Используйте APIPentesting для сканирования из этого экспорта:
- `./scripts/scan-nuclei-prioritize.sh /path/to/ai_bundle.json burp-ai-scan`
5. Передайте `Reports/.../priority.json` + `results.jsonl` в свой ИИ-интерфейс, используя APIPentesting `scripts/AI_TRIAGE_PROMPT.md`.
6. Используйте `ai_sequence_evidence_ledger.json`, `ai_golden_ticket_ledger.json` и `ai_state_transition_ledger.json`, чтобы определить приоритеты проверки.
**В: Можно ли импортировать ранее экспортированные данные?**
О: Да. `Import` принимает:
- `api_analysis.json` (экспорт BurpAPISecuritySuite).
- Excalibur `.har` экспорт (Excalibur — проприетарный инструмент: https://github.com/Teycir/Excalibur).
- Excalibur `-replay-studio.json` / `-cookies.json` / `-insights.json` sidecar-файлы (автоматически обнаруживаются из того же префикса сессии).
- `excalibur_bridge_bundle.json` (`schema: excalibur-burp-bridge/v1`).
Если обнаружены артефакты Excalibur, инструмент автоматически запускает `Refresh Invariants` после импорта, чтобы кэши Differential + Sequence + Golden + State + Token Lineage + Parity Drift были сразу готовы.
**В: Могу ли я отправлять захваченные запросы в Postman или Insomnia?**
О: Да. На вкладке Recon используйте:
- `Postman` для экспорта `postman_collection.json` (Collection v2.1).
- `Insomnia` для экспорта `insomnia_collection.json` (формат импорта Insomnia).
- Оба поддерживают выбор области: `All Endpoints`, `Filtered View` или `Current Host`.
### Устранение неполадок
**В: Расширение загружено, но не отображается на вкладках?**
О: Проверьте вкладку Burp's Extender → Extensions на наличие ошибок. Частые причины:
- Jython настроен неправильно.
- Ошибки синтаксиса Python 2.7 (расширение использует Jython/Python 2.7).
- Недостаточно памяти (увеличьте размер кучи Burp).
**В: Сообщение «No endpoints captured»?**
О: Убедитесь, что:
- Вы активно просматриваете сайты через прокси Burp.
- Auto-Capture включена.
- Цель отправляет HTTP-запросы (а не просто загружает статические файлы).
- Проверьте, не фильтруются ли конечные точки (изображения/шрифты автоматически отфильтровываются).
**В: Сканирование Nuclei/HTTPX зависает или истекает по времени?**
О:
- Проверьте, что инструмент установлен и путь указан верно.
- Проверьте сетевое подключение к целям.
- Крупные сканирования могут занимать несколько минут (максимальное время ожидания по умолчанию: 15 минут).
- Используйте **Target Bases...** с **Only Base+Derivatives**, чтобы ограничить область действия одной целью.
- Используйте кнопку **Stop** на той же вкладке для отмены запущенных внешних инструментов.
- Проверьте Activity Log для подробных сообщений об ошибках.
**В: Почему некоторые конечные точки помечены как «Critical» или «High»?**
О: Критичность определяется на основе:
- **Critical**: Отладочные/административные конечные точки, неаутентифицированные IDOR/BOLA.
- **High**: Аутентифицированные IDOR/BOLA, раскрытие конфиденциальных данных, слабое шифрование.
- **Medium**: Ответы с ошибками, отражённые параметры.
- **Info**: Стандартные конечные точки.
### Расширенное использование
**В: Как тестировать состояния гонки?**
О:
1. Сгенерируйте атаки фаззинга (вкладка Fuzzer).
2. Нажмите кнопку «Turbo Intruder».
3. Загрузите экспортированный скрипт `race_condition.py` в Turbo Intruder Burp.
4. Настройте на 50+ параллельных запросов.
**В: Можно ли настраивать полезные нагрузки атак?**
О: Да! Экспортируйте полезные нагрузки в JSON, измените их, затем:
- Используйте вручную в Burp Intruder.
- Передайте в ИИ для улучшения.
- Создайте собственные скрипты с библиотекой полезных нагрузок.
**В: Как сравнить две версии API?**
О:
1. Экспортируйте данные API из версии 1 («Export All»).
2. Очистите данные и захватите версию 2.
3. Экспортируйте версию 2.
4. Используйте вкладку Diff → Загрузите оба экспорта → Сравните.
**В: Какой наилучший рабочий процесс для охоты за багами?**
О:
1. Захватите аутентифицированный трафик (все роли пользователей).
2. Сначала просмотрите конечные точки с критической/высокой степенью серьёзности.
3. Сгенерируйте атаки «All» во Fuzzer.
4. Сосредоточьтесь на конечных точках BOLA/IDOR.
5. Используйте Version Scanner для поиска устаревших API.
6. Запустите Param Miner на ценных конечных точках.
7. Экспортируйте в Nuclei для автоматической проверки.
### Технические особенности
- **Чистая архитектура Jython**: Модульный дизайн с тестируемой основной логикой.
- **Модульное извлечение**: Тяжёлые рабочие процессы вынесены во вспомогательные модули (`heavy_runners.py`, `ai_prep_layer.py`, `behavior_analysis.py`).
- **Интеллектуальное обнаружение**: Выявление уязвимостей с учётом контекста.
- **Оптимизированная производительность**: Эффективно обрабатывает 500+ конечных точек.
- **Кроссплатформенность**: Работает в Windows, macOS, Linux.
- **Расширяемость**: Легко добавлять новые типы атак и полезные нагрузки.
- **Профессиональный интерфейс**: Цветовая маркировка серьёзности, интерфейс с вкладками, статистика в реальном времени.
- **Покрытие воспроизведения**: Включает тесты корпуса золотого воспроизведения для обнаружения инвариантов последовательностей + вывод журнала уверенности.
## 💼 Профессиональные услуги
Нужны собственные инструменты безопасности или решения для тестирования API? Я создаю готовые к эксплуатации приложения и инструменты безопасности.
### Избранные проекты
- **[ApiHunter](https://github.com/Teycir/ApiHunter)** — Инструмент для автоматической разведки и тестирования безопасности API с интеллектуальным обнаружением конечных точек.
- **[TimeSeal](https://timeseal.online)** ([GitHub](https://github.com/Teycir/Timeseal)) — Криптографическое хранилище с временной блокировкой и «механизмом мёртвой руки» с нулевым доверием.
- **[Ghost Chat](https://ghost-chat.pages.dev)** — Безопасный P2P-чат с WebRTC, без хранения на сервере, таймеры самоуничтожения.
- **[BurpCopyIssues](https://github.com/Teycir/BurpCopyIssues)** — Расширение Burp Suite для просмотра, копирования и экспорта результатов сканирования.
- **[BurpWpsScan](https://github.com/Teycir/BurpWpsScan)** — Сканер безопасности WordPress для Burp Suite с интеграцией WPScan API.
- **[Excalibur](https://github.com/Teycir/Excalibur)** — Инструментарий для обнаружения поверхности атаки API и работы с сессионными процессами для практических операций пентеста (проприетарный инструмент).
- **[APIPentesting](https://github.com/Teycir/APIPentesting)** — Внешнее сканирование и вспомогательный рабочий процесс для эксплуатации на основе Burp для охоты за багами в API.
- **Собственные инструменты безопасности** — Расширения Burp, фреймворки для тестирования API, скрипты автоматизации.
### Предоставляемые услуги
- 🔒 **Разработка инструментов безопасности** — Пользовательские расширения Burp, инструменты для пентеста, фреймворки автоматизации.
- 🚀 **Разработка веб-приложений** — Полноценная разработка с использованием современных технологий.
- 🔧 **Консалтинг по безопасности API** — Анализ архитектуры, оценка уязвимостей, рекомендации по устранению.
- 🤖 **Интеграция с ИИ** — Инструменты безопасности на основе LLM, автоматическая генерация полезных нагрузок, интеллектуальный фаззинг.
**Связаться**: [teycirbensoltane.tn](https://teycirbensoltane.tn) | Доступен для фриланс-проектов и консалтинга.
## Участие
### Автор
Разработано [Тейсиром Бен Солтаном](https://teycirbensoltane.tn)
### Лицензия
Лицензия MIT — Бесплатно для использования в авторизованном тестировании безопасности и исследовательских целях.
## Журнал изменений
См. [CHANGELOG.md](https://github.com/teycir/burpapisecuritysuite/blob/HEAD/CHANGELOG.md) для полной истории релизов.
| Функция | BurpAPISecuritySuite | Burp Scanner Pro | OWASP ZAP | Postman |
|---|
| Цена | Бесплатно | $449/год | Бесплатно | Бесплатно/Платно |
| Специализация по API | ✅ Да | ⚠️ Частично | ⚠️ Частично | ✅ Да |
| Автозахват и нормализация | ✅ Да | ❌ Нет | ⚠️ Базовая | ❌ Нет |
| Обнаружение BOLA/IDOR | ✅ Автоматическое | ⚠️ Вручную | ⚠️ Вручную | ❌ Нет |
| Типы атак | 15 типов | 100+ (общие) | 50+ (общие) | Ограниченный |
| Полезные нагрузки для API | 108+ сфокусированных на API | Общие веб | Общие веб | Базовые |
| Анализ JWT | ✅ Автоматический | ⚠️ Нужно расширение | ⚠️ Нужно расширение | ⚠️ Вручную |
| Тестирование GraphQL | ✅ Встроенное | ❌ Нет | ⚠️ Ограниченное | ⚠️ Вручную |
| Тестирование состояний гонки | ✅ Turbo Intruder | ✅ Turbo Intruder | ❌ Нет | ❌ Нет |
| Интеграция с ИИ | ✅ Экспорт AI Bundle + LLM payloads | ❌ Нет | ❌ Нет | ❌ Нет |
| Сканер версий | ✅ Встроенный | ❌ Нет | ❌ Нет | ❌ Нет |
| Майнинг параметров | ✅ Встроенный | ⚠️ Нужно расширение | ❌ Нет | ❌ Нет |
| Wayback Discovery | ✅ Встроенный | ❌ Нет | ❌ Нет | ❌ Нет |
| Интеграция внешних инструментов | ✅ ApiHunter, Nuclei, SQLMap, Dalfox, HTTPX, Katana, FFUF, Subfinder, DNSX | ❌ Нет | ⚠️ Ограниченная | ⚠️ Ограниченная |
| Техники обхода WAF | ✅ 20+ методов | ⚠️ Некоторые | ⚠️ Некоторые | ❌ Нет |
| Форматы экспорта | JSON, Intruder, Turbo, Nuclei, cURL | XML, HTML | XML, HTML, JSON | JSON, cURL |
| Поддержка Burp Community | ✅ Да | ❌ Только Pro | N/A | N/A |
| Кривая обучения | Низкая | Средняя | Средняя | Низкая |
| Лучше всего подходит для | Pentest API, bug bounty | Полное тестирование веб-приложений | Автоматизация DAST | Разработка API |
Tag Rules...Save RegexShow Endpoint Detail, Send Selected To Repeater, Copy Selected Rows и массовый выбор.auth -> object access -> state changeabuse_chain_*, proof_mode_packet_sets, spec_guardrails_* и role_delta_*Auth OnlyAuth + Unauthauth-associatedunauth-associatedauth_detectedUnauth Only, Auth Only, Auth + Unauth (по умолчанию). В двухпроходном режиме дедуплицированные базовые URL разделяются на списки целей auth-associated и unauth-associated; каждый проход выполняется по своему списку. Ассоциация аутентификации использует как заголовки аутентификации запросов, так и сигналы аутентификации, не являющиеся заголовками (auth_detected, маркеры токенов/куки/сессий в метаданных запроса).Critical / High / Medium для контроля шума в сводке триажаCustom Targets... вместо фильтрованной области Reconмакс. 20 записей, по одной на строку) со строгой санитацией и канонической нормализацией базового URL (scheme://host[:port]/), включая дедупликацию и отклонение недопустимых строкUse Custom Targets включено, запуск завершается ошибкой, если содержимое всплывающего окна пусто, превышает лимит или содержит недопустимые строки URLscheme://host[:port]/) для ApiHunterQuick: --no-discovery, --max-endpoints 40, --concurrency 4, --timeout-secs 12, --retries 1, --delay-ms 0, и отключает тяжёлые сканеры (mass-assignment, oauth-oidc, rate-limit, cve-templates, websocket)Balanced: --no-discovery, --max-endpoints 80, --concurrency 5, --timeout-secs 15, --retries 1, --delay-ms 50Deep: --active-checks --response-diff-deep --no-discovery, --max-endpoints 0, --concurrency 6, --timeout-secs 20, --retries 2, --delay-ms 100, --waf-evasion, --per-host-clients, --adaptive-concurrency{apihunter_path}, {targets_file}, {results_file})Auth + Unauth заблокирован; используйте Auth Only или Unauth Only, или отключите пользовательский режим для автоматического двухпроходного выполнения.Critical / High / Medium), в то время как статистика вывода сканера остаётся полной.CookieFast, Balanced, Deep — пресеты сканирования для обнаружения APIAuth + Unauth заблокирован; используйте Auth Only или Unauth Only, или отключите пользовательский режим для автоматического двухпроходного выполнения.nuclei/httpx/katana/ffuf/kiterunner/waybackurls/gau/sqlmap/dalfox/subfinder/dnsxtaskkill в Windows и pkill (с запасным killall) в Linux/macOSFilter Noise сжимает его набор целей по умолчаниюPath Traversal (Обход пути)
SSRF (Подделка запросов на стороне сервера)
XXE (Внешние сущности XML)
Десериализация