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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/d3ckx1/omniscan
OSINT (Разведка открытых источников)РазведкаСканеры уязвимостейСканеры веб-уязвимостейДинамический анализ (песочница)Фреймворки для эксплойтовФаззингТестирование на ПроникновениеRed Teaming
GitHubd3ckx1/omniscan

OmniScan

Многодвигательный сканер уязвимостей со встроенными движками Nuclei Lite, Afrog и XRay. Включает обнаружение активов через FOFA/Shodan, обнаружение взаимодействий OOB, систему плагинов на Python и управление результатами в реальном времени для операций Red Team.

96 месяцев назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий

OmniScan — Многофункциональный сканер уязвимостей

OmniScan — это легковесный, многодвигательный сканер уязвимостей на Python, разработанный для операций Red Team и исследований в области безопасности. Он объединяет облегчённый движок Nuclei (Lite) и движок Afrog, предоставляя мощные возможности сбора активов и управления результатами.

Основные возможности

1. Поддержка нескольких движков

  • Движок Nuclei Lite (встроенный):
    • Реализация ядра Nuclei на чистом Python, не требует окружения Go.
    • Повышенная безопасность: использует simpleeval вместо eval и выполняет DSL-выражения в изолированной среде для предотвращения выполнения вредоносных шаблонов.
    • Умная генерация переменных: автоматически распознаёт и заполняет неопределённые переменные шаблонов (например, {{lang-file}} → etc/passwd), поддерживает интеллектуальный фаззинг.
    • Глубокая совместимость:
      • Поддерживает большинство вспомогательных функций Nuclei (включая hmac, gzip, reverse, rand_base и др.).
      • Поддерживает логику flow и req-condition.
      • Поддерживает сохранение сессий cookie-reuse и управление перенаправлениями redirects.
    • Интеллектуальная фильтрация ложных срабатываний:
      • Smart FP Reduction: для страниц с кодом 200 OK интеллектуально выявляет и отсеивает ложные срабатывания, соответствующие только коду состояния, но не ключевым словам (эвристика строгого режима).
      • Определение WAF: автоматически распознаёт страницы блокировки WAF (403/429), избегая ложных срабатываний.
    • Обнаружение OOB-взаимодействий (улучшено):
      • Встроенный клиент Interactsh для автоматической обработки уязвимостей без прямого отклика (например, Blind RCE, SSRF).
      • Correlation ID: для каждого запроса генерируется уникальный идентификатор, обеспечивающий точное сопоставление OOB-взаимодействий и исключающий ложные срабатывания.
      • Адаптивное ожидание: автоматическая регулировка времени ожидания OOB-обнаружения для баланса скорости и точности.
  • Движок Afrog: интеграция сканера Afrog для дополнительных возможностей обнаружения уязвимостей.
  • Официальный движок Nuclei: поддержка вызова установленного в системе двоичного файла Nuclei.
  • Движок XRay: поддержка вызова XRay для веб-сканирования.

2. Система плагинов (Новое)

  • Расширение через плагины Python: позволяет пользователям писать скрипты Python в качестве плагинов сканирования для обработки сложной логики.
  • Визуальный прогресс: встроенный прогресс-бар tqdm для отображения хода сканирования каждого плагина на каждой цели в реальном времени.
  • Простота использования: достаточно унаследоваться от класса BasePlugin и реализовать метод check(url).
  • Бесшовная интеграция: результаты сканирования плагинов автоматически попадают в общий отчёт и управляются вместе с результатами Nuclei.
  • Целевое сканирование: поддержка указания одного или нескольких файлов плагинов для специализированной проверки.
  • Примеры плагинов:
    • git_config.py: обнаружение утечки .git/config
    • spring_boot.py: обнаружение Spring Boot Actuator
    • ds_store.py: обнаружение утечки .DS_Store
    • phpinfo.py: обнаружение страницы phpinfo()
    • backup_files.py: обнаружение распространённых файлов резервных копий (.bak, .zip и т.д.)
    • swagger_ui.py: обнаружение документации Swagger UI

3. Сбор активов

  • Поиск в FOFA: интеграция с API FOFA, поддержка массового поиска активов по синтаксису (например, country="CN").
  • Поиск в Shodan: интеграция с API Shodan, поддержка поиска активов по ключевым словам.
  • Одиночная цель: поддержка прямого указания одного URL для быстрого сканирования.
  • Загрузка локальных целей: поддержка массовой загрузки списка URL из текстового файла.
  • Умная проверка активности: автоматическая HTTP-проверка активности перед сканированием, отсеивание неактивных целей.
  • Нормализация URL: автоматическое дополнение протокола (http/https) и удаление дубликатов.

4. Высокопроизводительная асинхронная архитектура и поддержка массовых шаблонов

  • Использует Python asyncio и aiohttp.
  • Оптимизация памяти (НОВОЕ):
    • Ленивая загрузка: файлы шаблонов загружаются по мере необходимости, без единовременной загрузки всех файлов.
    • Пакетная обработка: поддержка массового сканирования десятков миллионов POC-шаблонов (по умолчанию 5000 за один пакет), окончательное решение проблемы переполнения памяти (OOM) при крупномасштабном сканировании.
    • Автоматическая сборка мусора: автоматическое освобождение памяти после каждого пакета.
  • Мониторинг прогресса в реальном времени: отображение подробной информации о прогрессе по пакетам и процентах.
  • Система LogFilter: автоматическое подавление некритичных ошибок (например, "Illegal cookie name") для чистоты вывода.

5. Управление результатами

  • Сохранение результатов в реальном времени:
    • Каждая обнаруженная уязвимость немедленно записывается в базу данных SQLite и CSV-файл, предотвращая потерю данных при прерывании программы.
    • После завершения сканирования каждой цели автоматически обновляется сводная статистика.
  • Отчёты в нескольких форматах: генерация отчётов в форматах JSON, CSV и HTML в реальном времени.
  • База данных SQLite: встроенная БД SQLite с автоматическим удалением дубликатов результатов (на основе ID шаблона + цели + URL).
  • Подробная сводка:
    • Во время сканирования в реальном времени выводятся сводки уязвимостей для каждой цели (включая количество находок в текущем пакете и общее количество накопленных находок).
    • Прогресс-бар показывает общее количество накопленных уязвимостей за всё сканирование.
    • После завершения сканирования предоставляется глобальная статистика уязвимостей.

6. Обнаружение OOB (внеполосных) взаимодействий

  • Полностью автоматическое замкнутое обнаружение: автоматическая обработка уязвимостей без прямого отклика, таких как Blind RCE, SSRF, Blind SQLi.
  • Встроенный клиент Interactsh:
    • Автоматическая загрузка и управление двоичным файлом interactsh-client. (Я уже загрузил interactsh-client.zip, вы можете просто распаковать его в этот каталог.)
    • Автоматическое получение URL полезной нагрузки OOB (например, xxx.oast.pro).
    • Мониторинг журналов DNS/HTTP/SMTP в реальном времени.
    • Нулевая конфигурация: сканер автоматически заменяет {{interactsh-url}} в шаблонах на полученную в реальном времени полезную нагрузку.

Быстрый старт

Требования к окружению

  • Python 3.8+
  • Linux / macOS / Windows

Установка

  1. Клонирование репозитория:

    root@kitploit:~
    git clone https://github.com/d3ckx1/OmniScan.git
    cd omniscan
    
  2. Установка зависимостей:

    root@kitploit:~
    pip3 install -r requirements.txt
    
  3. Настройка инструментов (опционально):

    • Если используется Afrog или XRay, убедитесь, что соответствующие исполняемые файлы находятся в корневом каталоге проекта или в системном PATH.
    • Настройте config.yml (опционально) для задания API-ключей и параметров сканирования.

Примеры использования

1. Сканирование одной цели

Сканирование одного URL:

root@kitploit:~
python3 omniscan.py -u http://example.com --tool lite -T ./templates/cve/

2. Сбор активов и сканирование (FOFA)

Поиск активов через FOFA и сканирование с помощью Nuclei Lite:

root@kitploit:~
python3 omniscan.py -f 'app="SpringBoot"' --tool lite -T ./templates/spring-boot/

3. Пакетное сканирование из локального файла

Чтение целей из urls.txt и сканирование:

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/cve/

4. Указание инструмента сканирования

  • Nuclei Lite: python3 omniscan.py -l urls.txt --tool lite -T ./templates/
  • Afrog: python3 omniscan.py -l urls.txt --tool afrog
  • XRay: python3 omniscan.py -l urls.txt --tool xray

5. Интерактивный режим

Запуск без параметра --tool для входа в интерактивное меню выбора инструмента:

root@kitploit:~
python3 omniscan.py -l urls.txt

6. Обнаружение OOB-уязвимостей

Сканирование Blind RCE-уязвимостей (автоматическое включение Interactsh):

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/blind-rce.yaml

При обнаружении OOB-взаимодействия консоль выведет [OOB DETECTED] и запишет уязвимость.

8. Включение сканирования плагинов Python

Использование движка Nuclei Lite со всеми плагинами:

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/ --plugins

9. Запуск определённых плагинов (специализированная проверка)

Запуск только плагинов Git Config и PHPInfo:

root@kitploit:~
python3 omniscan.py -l urls.txt --tool lite -T ./templates/ --plugin-file plugins/git_config.py,plugins/phpinfo.py

10. Только классификация/валидация шаблонов

Без фактического сканирования, только проверка совместимости шаблонов:

root@kitploit:~
python3 omniscan.py --classify-only --tool lite -T ./templates/

Описание параметров

Файл конфигурации (config.yml)

root@kitploit:~
app:
  lite_timeout: 10        # Таймаут запроса (сек)
  lite_threads: 10        # Количество параллельных потоков
  use_async: true         # Включить асинхронный режим
  user_agents:            # Пул пользовательских User-Agent
    - "Mozilla/5.0..."

fofa:
  email: "your_email"
  key: "your_key"

shodan:
  api_key: "your_key"

output:
  formats: ["json", "csv", "html"] # Форматы отчётов

Структура каталогов

  • omniscan.py: Главный вход программы, разбор параметров и планирование задач.
  • nuclei_lite.py: Ядро Nuclei Lite, реализация разбора YAML-шаблонов и сканирования.
  • result_manager.py: Модуль управления результатами, обработка дедупликации и генерации отчётов.
  • database.py: Управление базой данных SQLite.
  • config.py: Модуль загрузки конфигурации.

Часто задаваемые вопросы

В: Что означает [OOB DETECTED]? О: Это означает, что сканер успешно обнаружил внешнее (Out-of-Band) взаимодействие. Обычно это указывает на то, что цель инициировала callback DNS или HTTP, что доказывает наличие уязвимости Blind RCE, SSRF или Blind SQLi.

В: Как настроить API FOFA/Shodan? О: Вы можете указать API-ключи в файле config.yml или через переменные окружения FOFA_EMAIL, FOFA_KEY, SHODAN_API_KEY.

В: Какие операционные системы поддерживаются? О: OmniScan кроссплатформенный, поддерживает Linux, macOS и Windows. Внешние инструменты (например, afrog, interactsh-client) должны быть исполняемыми в текущей системе.

Лицензия

MIT License

Скачать инструмент
ПараметрОписаниеПример
-u URLСканирование одного URL-u http://example.com
-fПоиск активов через FOFA-f 'country="CN"'
-sПоиск активов через Shodan-s 'apache'
-l FILEУказание локального файла с целями-l targets.txt
-T TEMPLATEПуть к шаблонам Nuclei (файл/каталог)-T ./templates/
--tool NAMEИнструмент сканирования (nuclei/afrog/xray/lite)--tool lite
--severityУровни критичности (по умолчанию critical,high)--severity high,medium
--pluginsВключить сканирование плагинов Python (каталог plugins/)--plugins
--plugin-file FILEЗапуск конкретных файлов плагинов (через запятую)--plugin-file plugins/test.py
--newСканирование только новых шаблонов (требуется поддержка Nuclei)--new
--no-resumeОтключение возобновления с прерванного места--no-resume
--verboseПодробный отладочный вывод--verbose