
Асинхронный сканер безопасности API на Rust для проверок CORS, CSP, GraphQL, JWT, OpenAPI и активных проверок состояния API.
Если этот проект помогает вашей работе, поддержите поддержку и новые функции.
ETH кошелек для пожертвований
0x11282eE5726B3370c8B480e321b3B2aA13686582
Отсканируйте QR-код или скопируйте адрес кошелька выше.
Асинхронный модульный сканер безопасности API для базового тестирования API и обнаружения регрессий.
Сочетает обнаружение с целевыми проверками (CORS/CSP/GraphQL/OpenAPI/JWT/API Security), используя адаптивную конкурентность и выводы, готовые для CI (NDJSON/SARIF).
Варианты использования: атака для red-team/тестирования на проникновение API, обнаружения и проверки эксплойтов, а также защита для блокировки регрессий в CI/CD, непрерывного усиления безопасности API и раннего обнаружения неверных конфигураций.
Сканирование в масштабе? См. Режим Triage — сканируйте 5000 целей за 20 минут с основными проверками безопасности, затем используйте Режим Enrich, чтобы добавить контекст угроз (порты, CVE, ASN, возраст домена) к результатам.
ApiHunterapihunterapi_scannerapihunter (по умолчанию для cargo run)Установите это в настройках репозитория GitHub для лучшей обнаруживаемости:
Асинхронный сканер безопасности API для CORS/CSP/GraphQL/JWT/OpenAPI и активных проверок состояния API.https://github.com/Teycir/ApiHunterrust, security, api-security, scanner, graphql, cors, csp, jwt, openapi, sarif, ndjsonflowchart LR A[CLI apihunter] --> B[main.rs] D[Input Sources] --> E[Pre-filter + Discovery] B --> C[HttpClient + Config] E --> F[runner.rs] C --> F
F --> G1[Passive scanners]
F --> G2[Active scanners]
I[template-tool] --> H[CVE templates]
H --> G2
G1 --> J[Findings]
G2 --> J
J --> K[Reporter]
K --> L[Auto Reports]
K --> M[CI/CD Controls]
## Почему ApiHunter?
### Основные преимущества
- **Архитектура, ориентированная на API**: Создан специально для REST/GraphQL API, а не адаптирован из сканеров веб-приложений
- **Интеллектуальное сокращение ложных срабатываний**:
- Обнаружение SPA catch-all с канареечными зондами
- Контекстно-зависимая проверка секретов (фронтенд vs бэкенд)
- Проверка содержимого тела и реферера
- Снятие отпечатков ответов для пропуска повторяющихся находок
- **Безопасен для продакшена по дизайну**:
- Адаптивная конкурентность (AIMD), снижающая нагрузку при ошибках
- Ограничение частоты запросов на хост с настраиваемыми задержками
- Контроль вежливости (повторы, таймауты, обход WAF)
- Режим пробного запуска для активных проверок
- **Стелс и обход защиты**:
- Ротация User-Agent во время выполнения из подобранного пула (assets/user_agents.txt)
- Случайные задержки запросов с джиттером
- Принудительная задержка для каждого хоста (избегает пакетных паттернов)
- Логика повторных попыток с экспоненциальной задержкой
- Инъекция пользовательских заголовков для смешивания с легитимным трафиком
- Адаптивная синхронизация на основе ответов сервера
- Отсутствие хардкодных отпечатков сканера в режиме по умолчанию
### Подробное описание методов стелса
ApiHunter использует несколько техник стелса для обхода WAF (Web Application Firewall) и систем защиты от ботов:
#### 1. Ротация User-Agent
**Что делает:** Случайным образом перебирает более 100 строк User-Agent реальных браузеров из файла (`assets/user_agents.txt`)
**Почему это работает:** Боты обычно используют один и тот же User-Agent (например, `curl/7.68.0`). Притворяясь Chrome, Firefox, Safari и т.д., вы смешиваетесь с легитимным трафиком
**Простая аналогия:** Как носить разные маскировки вместо одной и той же униформы