Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
APIHarvester — Инструмент для одноразовой атаки на API — находит URL API по заданному корню и имитирует автоматизированные атаки | Kitploit
Инструменты/GitHubGitHub/piratesshield/apiharvester
РазведкаСканеры уязвимостейСканеры веб-уязвимостейПеречисление DNS и поддоменовЭксплуатация веб-приложенийТестирование безопасности APIСбор информацииФаззингТестирование на ПроникновениеОбнаружение СекретовКраулер
32672 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Безопасность API
GitHubpiratesshield/apiharvester

APIHarvester

Инструмент для одноразовой атаки на API — находит URL API по заданному корню и имитирует автоматизированные атаки

Репозиторий
Поделиться
ChatGPT Image Jul 15, 2026, 10_14_08 AM

ApiHarvester

Полноценный сканер безопасности API методом чёрного ящика, написанный на Python. Он перечисляет эндпоинты, выявляет параметры, проверяет HTTP-методы, тестирует логику аутентификации/авторизации и запускает стандартные симуляции атак из OWASP API Top 10 (BOLA, Broken Auth, BFLA, Mass Assignment, Rate Limiting, SSRF, Security Misconfiguration и т. д.), а также фаззер надёжности в стиле RESTler, который ищет сбои/500-е ошибки независимо от какой-либо категории OWASP.

Все основные скрипты спроектированы так, чтобы быть stdlib-only (только стандартная библиотека). Если внешние инструменты или библиотеки отсутствуют в системе, apiharvester автоматически переключается на чистые реализации на Python, чтобы гарантировать работу «из коробки».


Структура репозитория

  • apiharvester/ — Основной каталог python-пакета. Запуск через python3 -m apiharvester.
  • scripts/check_requirements.sh — Проверяет наличие бинарников и полезных нагрузок.
  • scripts/install_requirements.sh — Загружает необходимые файлы полезных нагрузок SecLists и опционально устанавливает бинарники (через go install и pip).
  • apiharvester.py — Автономная одностраничная (single-file) сборка сканера.
  • api_deep_discovery.py — Динамический краулер, использующий код headless-браузера Katana для динамического обнаружения эндпоинтов SPA/XHR.
  • api_intelligence_engine.py — Агрегатор пайплайна и пассивный классификатор уязвимостей.
  • apisec.py — Альтернативная одностраничная версия сканера безопасности.
  • requirements.txt — Список зависимостей Python (в первую очередь для опциональных ускорителей на Python).
  • payloads/ — Файлы словарей и полезных нагрузок для разведки:
    • params.txt — 25 889 кандидатов в имена параметров для тестирования эндпоинтов API
    • directories.txt — 62 281 распространённых шаблонов путей API и имён каталогов
    • subdomains.txt — 5 000 вариантов поддоменов для обнаружения API
    • kiterunner/ — Файлы схем маршрутов Kiterunner для ускоренного перечисления эндпоинтов

Установка и настройка

  1. Проверка требований: Запустите скрипт только для чтения, чтобы проверить наличие основных инструментов/полезных нагрузок:

    ./scripts/check_requirements.sh
    
  2. Установка опциональных инструментов и файлов полезных нагрузок: Запустите скрипт установки, чтобы автоматически загрузить топовые словари SecLists, схемы маршрутов Kiterunner и установить ускорители:

    ./scripts/install_requirements.sh
    
  3. Установка пакетов Python:

    pip3 install -r requirements.txt
    

Использование

Запустите сканер напрямую против целевого домена:

python3 -m apiharvester example.com \
    --auth "Bearer eyJ..." \
    --auth2 "Bearer eyJ_lowpriv..." \
    --threads 20 \
    --html report.html \
    --json findings.jsonl

Параметры командной строки:

  • target (позиционный): FQDN-домен для сканирования.
  • --auth: Токен доступа с высокими привилегиями для аутентифицированных проверок (например, действительная сессия пользователя).
  • --auth2: Токен доступа с низкими привилегиями для тестирования BOLA / BFLA / повышения привилегий между аккаунтами.
  • --threads: Размер пула потоков (по умолчанию: 20).
  • --timeout: Таймаут HTTP-запроса в секундах (по умолчанию: 10).
  • --burst: Количество быстрых запросов для проверки ограничения скорости (по умолчанию: 20).
  • --json: Сохранить отчёт в формате JSONL (находки в виде построчного JSON).
  • --html: Сохранить интерактивный HTML-отчёт-дашборд.
  • --output-dir: Переопределить путь к каталогу вывода по умолчанию (например, ./scans/example.com).
  • --skip-recon: Пропустить фазы разведки, использовать существующие файлы вывода из предыдущего запуска.
  • --recon-dir: Загрузить существующий каталог вывода разведки и запустить только фазы атак.
  • --attacks-only: Запустить только фазы атак (подразумевает --skip-recon).
  • --attacks: Список атак через запятую для запуска. По умолчанию: все. Доступные:
    bola,broken_auth,mass_assignment,rate_limit,bfla,business_logic,
    ssrf,misconfiguration,inventory,sspp,injection,reliability,secrets
    

Модули атак

OWASP API Top 10 (API1–API10:2023):

  • API1: BOLA/IDOR (bola) — Нарушение авторизации на уровне объектов. Тестирует эндпоинты с идентификаторами объектов путём фаззинга ID (0, 1, 2, 99, "admin", "test", варианты UUID и т. д.) и дифференциальными токенами аутентификации.
  • API2: Broken Auth (broken_auth) — Обнаружение неаутентифицированных эндпоинтов, взлом слабых секретов JWT, обход alg=none, подмена утверждений (claims), инъекция kid, а также обходы через методы OPTIONS/HEAD.
  • API3: Mass Assignment (mass_assignment) — Инъекция полей повышения привилегий в тела PUT/PATCH (role, is_admin, verified, balance и т. д.).
  • API4: Rate Limiting (rate_limit) — Отправляет 20+ быстрых запросов; помечает эндпоинты, возвращающие 200 вместо 429 Retry-After.
  • API5: BFLA (bfla) — Нарушение авторизации на уровне функций. Тестирует чувствительные пути (/admin, /roles, /impersonate и т. д.) с низкопривилегированным токеном и без него.
  • API6: Business Logic (business_logic) — Нарушения рабочих процессов/машины состояний (например, обновление заказа после оплаты).
  • API7: SSRF (ssrf) — Тестирует на подделку серверных запросов через параметры URL и тела запросов.
  • API8: Misconfiguration (misconfiguration) — CORS (активно: отправляет недоверенный Origin), отсутствующие заголовки безопасности, подробные ошибки, утечки баннеров сервера.
  • API9: Inventory (inventory) — Незадокументированные эндпоинты, заброшенные эндпоинты, открытые административные интерфейсы.
  • API10: SSPP (sspp) — Небезопасная серверная постобработка (инъекция шаблонов, инъекция XPath и т. д.).

Дополнительные атаки:

  • Injection (injection) — SQL-инъекции, XSS, инъекции команд (на основе ошибок + слепые по времени).
  • Reliability (reliability) — Фаззинг в стиле RESTler: тестирование граничных/некорректных входных данных для поиска сбоев 5xx и ошибок надёжности сервера (независимо от категорий OWASP).
  • Secrets (secrets) — Сопоставление по шаблонам для поиска утёкших учётных данных в телах ответов: AWS Access Keys, Google API Keys, Slack Tokens, Stripe Keys, GitHub Tokens, Private Key Blocks, JWTs и обобщённые присваивания секретов (api_key=..., password=... и т. д.).

Примеры сканирований

Полное сканирование с аутентифицированным + низкопривилегированным токеном (лучше всего для BOLA/BFLA):

python3 -m apiharvester api.example.com \
    --auth "Bearer high_priv_token_here" \
    --auth2 "Bearer low_priv_token_here" \
    --html report.html \
    --json findings.jsonl

Быстрая разведка без атак (обнаружение эндпоинтов, без атак):

python3 -m apiharvester example.com --skip-recon --attacks ""

(Или просто не указывайте --auth, чтобы пропустить некоторые фазы атак.)

Повторный запуск только атак против сохранённых данных разведки (быстрая итерация):

python3 -m apiharvester example.com --recon-dir output/example.com_20260715_140233 --attacks-only

Запуск только определённых атак (например, BOLA + Secrets):

python3 -m apiharvester example.com --attacks bola,secrets

Обход ошибок TLS-сертификатов (корпоративный прокси, staging-окружение):

# apiharvester использует разрешающий TLS-контекст по умолчанию — дополнительные флаги не нужны
# Все HTTPS-эндпоинты работают даже с самоподписанными/перехваченными сертификатами
python3 -m apiharvester https://staging-api.example.com

Каталог вывода

Скачать инструмент