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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-55182-scanner — Неинтрузивный поверхностный сканер для CVE-2025-55182 (React Server Components RCE). Обнаруживает открытые RSC-эндпоинты в приложениях React 19 и Next.js. | Kitploit
Инструменты/GitHubGitHub/fatguru/cve-2025-55182-scanner
Сканеры уязвимостейЭксплуатацияЭксплуатация веб-приложенийОбход WAFВеб-безопасностьТестирование на ПроникновениеRed Teaming
GitHubfatguru/cve-2025-55182-scanner

CVE-2025-55182-scanner

Неинтрузивный поверхностный сканер для CVE-2025-55182 (React Server Components RCE). Обнаруживает открытые RSC-эндпоинты в приложениях React 19 и Next.js.

Репозиторий
1121739 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

Сканер поверхности экспозиции React Server Components

(CVE-2025-55182)

Специализированный, неинвазивный детектор поверхности для CVE-2025-55182 (RCE в React Server Components).


⚠️ Критический технический контекст

Прочтите это перед сканированием:

Хотя CVE-2025-55182 является критической уязвимостью RCE (CVSS 10.0), реальная эксплуатация в производственных средах Next.js условна.

  1. Барьер белого списка: Next.js использует serverManifest для белого списка разрешенных модулей. Прямые попытки загрузить опасные модули (например, child_process) через RSC часто терпят неудачу, поскольку их нет в этом манифесте.
  2. Цепочка атак: Для достижения RCE на защищенной цели злоумышленникам часто требуется объединить эту уязвимость с примитивом Prototype Pollution, чтобы перезаписать serverManifest в памяти и обойти белый список.
  • Минификация Webpack: В производственных сборках идентификаторы модулей минифицируются (например, 742 вместо "vm"). Жесткие эксплойты, угадывающие имена, потерпят неудачу (ложноотрицательные результаты).
  • Этот инструмент — детектор поверхности. Он определяет, открыт ли и активен ли протокол RSC. Обнаружение открытой конечной точки — это необходимый первый шаг для выявления поверхности атаки, где можно попытаться выполнить цепочку Prototype Pollution.


    🛡️ Зачем использовать этот детектор поверхности?

    • Большинство публичных PoC и сканеров дают ложноотрицательные результаты в производственных средах, поскольку попадают в четыре распространенные ловушки:

    • Жесткость эксплойта: Они пытаются выполнить конкретные гаджеты (например, vm или child_process), которые блокируются белыми списками, или полагаются на жестко заданные идентификаторы (например, "id":"vm"), которые не работают с минифицированными сборками Webpack.

    • Перенаправления корня: Отправка POST на / в Next.js часто вызывает перенаправление 307/308 (например, на /login), в результате чего тело POST теряется или преобразуется в GET до того, как сервер его обработает.

    • Несоответствие транспорта: Многие сканеры отправляют полезные нагрузки как text/plain или сырой JSON. Строгие Server Actions Next.js часто требуют инкапсуляции multipart/form-data. Если формат неверный, сервер возвращает 404/200, не запуская уязвимый парсер.

    • Слепота WAF: Стандартные инструменты видят 403 Forbidden и сдаются. Они не различают глобальную блокировку IP и фильтрацию по конкретному правилу, упуская возможности обхода WAF с помощью кодирования или дополнения.

    Этот сканер решает все три проблемы:

    ✅ Умное зондирование путей: Автоматически зондирует случайные несуществующие пути (например, /x7z9q2), чтобы обойти перенаправления корня (307/308) и заставить App Router Next.js обработать контекст запроса.

    ✅ Строгий транспорт (Multipart): Использует инкапсуляцию multipart/form-data вместо обычного текста. Это устраняет ложноотрицательные результаты на строгих конечных точках Server Action, которые иначе возвращают 404.

    ✅ Дифференциальный анализ WAF: Различает глобальные блокировки ([BLOCKED]) и фильтрацию по конкретному правилу ([FILTERED]). Если бэкенд разрешает протокол, но блокирует полезную нагрузку, сканер определяет его как цель высокой ценности.

    ✅ Режим автообхода: Включает опциональный движок --bypass, который автоматически применяет методы уклонения (Unicode-экранирование, мутация пробелов, мусорное дополнение) для целей со статусом [FILTERED].

    ✅ Усиленное обнаружение: Выявляет «тихие сбои» ([SUSPICIOUS]) на корпоративных серверах, которые удаляют заголовки X-Powered-By, и определяет отпечаток перенаправления Assetnote 303 See Other.

    ✅ Активное определение версии: Использует специальную полезную нагрузку (["$1:aa:aa"]) для вызова уникальной ошибки React 19 RSC «Digest», подтверждая активность парсера даже без полного RCE.


    🚀 Установка

    1. Клонируйте репозиторий:

      root@kitploit:~
      git clone https://github.com/fatguru/CVE-2025-55182-scanner.git
      cd CVE-2025-55182-scanner
      
    2. Установите зависимости (рекомендуется в виртуальном окружении):

      root@kitploit:~
      pip install -r requirements.txt
      

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

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

    Проверьте один URL. Обратите внимание: убедитесь, что вы указываете правильный путь приложения (например, /dashboard, /login), а не просто корневой домен, так как конечные точки App Router Next.js зависят от пути.

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -u http://localhost:3000/dashboard
    

    Массовое сканирование

    Сканируйте список URL из файла (один URL на строку). Это рекомендуемая стратегия, чтобы не пропустить конкретные пути.

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -l targets.txt -o results.csv
    

    Небезопасный режим (Новое)

    Игнорировать ошибки SSL/TLS сертификатов (полезно для сканирования по IP, локальных лабораторий или самоподписанных сертификатов).

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -u [https://192.168.1.50](https://192.168.1.50) -k
    

    Сканирование с пользовательскими заголовками (Обход WAF / Аутентификация)

    Новое в v2.1: Используйте флаг --header для передачи сессионных cookie или токенов, если приложение защищено аутентификацией или WAF, требующим определенных заголовков.

    root@kitploit:~
    python3 cve_2025_55182_scanner.py -u https://target.com --header "Cookie: session=123" --header "Authorization: Bearer xyz"
    

    Параметры

    ФлагОписание
    -u, --urlЕдинственный целевой URL (например, http://target.com/dashboard).
    -l, --listФайл со списком URL для сканирования (по одному на строку).
    --bypass(Новое v2.5) Включить режим обхода WAF. Автоматически применяет методы мутации (Unicode, дополнение, пробелы), если цель определена как [FILTERED].
    --headerДобавить пользовательские заголовки (например, Cookie: session=xyz, Authorization: Bearer...). Можно использовать несколько раз.
    -o, --outputСохранить результаты в текстовый файл.
    -k, --insecureОтключить проверку TLS-сертификата (подавить предупреждения SSL).
    -t, --threadsКоличество параллельных потоков для массового сканирования (по умолчанию: 10).
    --timeoutТайм-аут запроса в секундах (по умолчанию: 10 с для учета полезных нагрузок multipart).
    --verboseВключить режим отладки. Показывает подробные шаги зондирования, статус блокировки WAF и попытки обхода.

    📊 Интерпретация результатов (v2.5)

    [EXPOSED] | 🔴 (Красный) | Уязвим

    Сервер обработал полезную нагрузку и вернул ошибку React 19 digest ИЛИ перенаправление Action Redirect (303). Высокая уверенность в открытой поверхности.

    [BYPASSED] | 🟠 (Оранжевый) | WAF обойден

    Успех! Сканер изначально обнаружил фильтр, но успешно обошел его с помощью методов мутации (например, дополнение/Unicode) для запуска уязвимости.

    [SUSPICIOUS] | 🟡 (Желтый) | Предупреждение

    Сервер аварийно завершил работу (500) при разборе полезной нагрузки. Указывает на открытую логику сериализации, даже на защищенных целях, которые удаляют заголовки X-Powered-By.

    [FILTERED] | 🔵 (Синий) | Обнаружено правило WAF

    Сервер принимает трафик RSC (безвредная полезная нагрузка прошла), но конкретное правило WAF заблокировало эксплойт. Цель активна за WAF. Используйте --bypass для попытки обхода.

    [INFO] | 🔵 (Голубой) | Протокол обнаружен

    Сервер говорит на RSC (text/x-component), но корректно обработал полезную нагрузку. Вероятно, исправлено или стандартное поведение.

    [BLOCKED] | 🟣 (Пурпурный) | Глобальная блокировка WAF

    Все было заблокировано (403/406), включая безвредное рукопожатие. WAF полностью блокирует протокол или ваш IP.

    [SAFE] | 🟢 (Зеленый) | Чисто

    Сервер вернул 404/200, но проигнорировал заголовки RSC/тела multipart на всех зондированных путях.

    🛠️ Шаблон Nuclei (https://github.com/projectdiscovery/nuclei)

    Шаблон Nuclei, основанный на этой логике обнаружения, включен в этот репозиторий: cve-2025-55182-detection.yaml.

    root@kitploit:~
    nuclei -t cve-2025-55182-detection.yaml -l targets.txt
    

    v2.5 Список изменений (Крупное обновление)

    • Режим обхода WAF: Новый флаг --bypass автоматизирует методы уклонения (пробелы, Unicode, большое дополнение), когда цель определяется как [FILTERED].
    • Поддержка Multipart: Транспорт полезной нагрузки переключен на multipart/form-data для устранения ложноотрицательных результатов на целях, возвращающих 404 на текстовые полезные нагрузки.
    • Умный анализ:
      • [FILTERED]: Определяет, когда WAF блокирует только полезную нагрузку эксплойта, но пропускает трафик RSC (цели высокой ценности).
      • [SUSPICIOUS]: Теперь перехватывает сбои на защищенных серверах, которые скрывают заголовки X-Powered-By.
      • [EXPOSED]: Добавлено обнаружение перенаправлений 303 See Other, используемых некоторыми уязвимыми реализациями.

    v2.2 Список изменений (Критическое обновление)

    • Исправление ложноотрицательных результатов (Multipart): Транспорт полезной нагрузки переключен с text/plain на multipart/form-data. Это устраняет ложноотрицательные результаты на целях, которые строго применяют данные формы для Server Actions и ранее возвращали 404.
    • Обнаружение перенаправлений: Логика обновлена для перехвата заголовков HTTP 303 See Other и x-action-redirect, которые являются сильными индикаторами обработки RSC, часто скрытыми, когда сканеры автоматически следуют за перенаправлениями.

    v2.1 Обновления

    • Исправление ложных срабатываний: Логика обновлена для разделения «Info» (Протокол RSC обнаружен, вероятно, исправлено) от «Suspicious» (Сбой сервера/500), что решает проблемы с исправленными версиями React 19.x.
    • Обнаружение WAF: Сканер теперь явно определяет и сообщает статус [BLOCKED] (HTTP 403/406), когда WAF перехватывает сигнатуру атаки.
    • Стратегия заголовков: Добавлен опциональный аргумент --header для пользовательской идентификации трафика, авторизации или внесения в белый список WAF.
    • Улучшения UX: Исправлен ASCII-баннер, добавлено подавление предупреждений SSL (-k) и надежная обработка цветов.

    ⚖️ Отказ от ответственности

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

    Ссылки:

    root@kitploit:~
    - https://nvd.nist.gov/vuln/detail/CVE-2025-55182
    - https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182
    
    Скачать инструмент