AJAX ZAP Proxy — Программа разворачивает локальный прокси-сервис, который асинхронно перехватывает URL-адреса из запросов, добавляет их в очередь и отправляет в AJAX-сканнер ZAP для выявления уязвимостей.
- Запускает локальный прокси на порту
8010для асинхронного перехвата и анализа запросов. - Уникальные URL-адреса добавляются в очередь для последующего сканирования.
- Использует асинхронную обработку с поддержкой мьютексов для безопасной передачи данных между потоками.
- В цикле URL-адреса из очереди проверяются и передаются в AJAX-сканнер ZAP.
- Если сканирование продолжается, URL возвращается обратно в очередь и повторно отправляется на сканирование, пока очередь не опустеет.
-
Склонируйте репозиторий и перейдите в директорию проекта.
-
Соберите проект с помощью команды:
cargo build --release
-
Запустите скрипт, указав токен ZAP:
./ajax_zap_api -t {zap_token} -
Дополнительные флаги (в разработке):
- -p proxy port (для использования кастомного порта прокси)
- -z zap port (кастомный порт zap)
- При запуске локальный прокси сервис поднимается на порту
8010. - Все запросы, проходящие через прокси, асинхронно перехватываются, а их URL-адреса добавляются в очередь.
- Благодаря мьютексам, обеспечивается безопасная и синхронизированная передача данных между потоками при работе с очередью.
- В асинхронном цикле происходит обработка URL-ов:
- Если URL еще не сканировался, он отправляется в AJAX-сканнер ZAP.
- Если сканирование URL находится в процессе, URL добавляется обратно в очередь и проверяется повторно через некоторое время.
- Цикл продолжается до тех пор, пока все URL не будут обработаны.
- Порт прокси:
8010 - Порт ZAP:
8080
- Убедитесь, что вы используете действительный ZAP-токен для авторизации API-запросов.