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

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

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

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

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

Категории

Все категории
Loading categories
cve-2025-55182-scanner — Пассивный сканер уязвимостей для CVE-2025-55182 и CVE-2025-66478, обнаруживающий неаутентифицированное RCE в React Server Components через фингерпринтинг фреймворка, анализ версий и проверку RSC-эндпоинтов. | Kitploit
Инструменты/GitHubGitHub/xkillbit/cve-2025-55182-scanner
Сканеры уязвимостейЭксплуатацияЭксплуатация веб-приложенийСбор информацииВеб-безопасностьТестирование на Проникновение
GitHubxkillbit/cve-2025-55182-scanner

cve-2025-55182-scanner

Пассивный сканер уязвимостей для CVE-2025-55182 и CVE-2025-66478, обнаруживающий неаутентифицированное RCE в React Server Components через фингерпринтинг фреймворка, анализ версий и проверку RSC-эндпоинтов.

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

Популярное

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

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

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

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

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

CVE-2025-55182 / CVE-2025-66478 Vulnerability Scanner

Инструмент обнаружения удалённого выполнения кода в протоколе Flight библиотеки React Server Components

CVSS Score Disclosure Date License


Краткое описание

Данный сканер выявляет системы, потенциально уязвимые к CVE-2025-55182 (React) и CVE-2025-66478 (Next.js) — критическим уязвимостям удалённого выполнения кода без аутентификации в протоколе "Flight" библиотеки React Server Components (RSC).

Ключевые факторы риска:

  • CVSS 10.0 — максимальная степень серьёзности
  • Без аутентификации — вход не требуется
  • Удалённая эксплуатация — возможна через сеть
  • Затрагиваются конфигурации по умолчанию
  • Сообщается о почти 100% надёжности эксплуатации

Содержание

  1. Обзор уязвимости
  2. Как работает сканер
  3. Установка
  4. Использование
  5. Понимание результатов
  • Уровни достоверности
  • Ограничения
  • Рекомендации
  • Ссылки

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

    Что такое CVE-2025-55182?

    Критическая уязвимость небезопасной десериализации в реализации Server Components библиотеки React. Протокол "Flight" в RSC не выполняет надлежащую проверку структуры и типов входящих полезных нагрузок, что позволяет злоумышленникам внедрять вредоносные данные, влияющие на выполнение на стороне сервера.

    Затронутые компоненты

    ПакетУязвимые версииИсправленные версии
    react-server-dom-webpack19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
    react-server-dom-parcel19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
    react-server-dom-turbopack19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1
    Next.js14.3.0-canary.77+, 15.x, 16.0.0-16.0.615.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7

    Затронутые фреймворки

    • Next.js (App Router)
    • React Router (предварительная версия RSC)
    • Плагин Vite RSC
    • Плагин Parcel RSC
    • RedwoodJS (RedwoodSDK)
    • Waku

    Вектор атаки

    root@kitploit:~
    Attacker → Crafted HTTP POST → RSC Endpoint → Deserialization → RCE
    

    Для атаки требуется лишь специально сформированный HTTP-запрос к любой конечной точке серверной функции. Аутентификация не требуется, а конфигурации по умолчанию уязвимы.


    Как работает сканер

    Методология обнаружения

    Сканер использует пассивное снятие отпечатков и зондирование протокола для выявления потенциально уязвимых систем. Он НЕ пытается осуществить эксплуатацию.

    root@kitploit:~
    ┌─────────────────────────────────────────────────────────────────┐
    │                     DETECTION PIPELINE                          │
    ├─────────────────────────────────────────────────────────────────┤
    │                                                                 │
    │  1. Framework Detection                                         │
    │     ├── HTTP Headers (X-Powered-By: Next.js)                   │
    │     ├── Page Source (__NEXT_DATA__, react artifacts)           │
    │     └── Build Manifests                                         │
    │                                                                 │
    │  2. Version Fingerprinting                                      │
    │     ├── Embedded version strings in JS bundles                 │
    │     ├── Package version patterns                                │
    │     └── Build manifest analysis                                 │
    │                                                                 │
    │  3. RSC Endpoint Discovery                                      │
    │     ├── Send RSC headers (RSC: 1, Accept: text/x-component)    │
    │     ├── Analyze response Content-Type                          │
    │     └── Detect Flight protocol markers in response             │
    │                                                                 │
    │  4. Server Actions Probing                                      │
    │     ├── POST request with minimal Flight payload               │
    │     ├── Check for deserialization processing                   │
    │     └── Identify action endpoints                              │
    │                                                                 │
    │  5. Vulnerability Assessment                                    │
    │     ├── Correlate version with known vulnerable ranges         │
    │     ├── Weight RSC endpoint presence                           │
    │     └── Generate confidence-scored verdict                     │
    │                                                                 │
    └─────────────────────────────────────────────────────────────────┘
    

    Технические методы обнаружения

    1. Обнаружение фреймворка

    ИндикаторМетод обнаруженияДостоверность
    X-Powered-By: Next.jsПроверка HTTP-заголовковВысокая
    Тег скрипта __NEXT_DATA__Разбор исходного кода HTMLВысокая
    Пути к ресурсам /_next/Разбор исходного кода HTMLСредняя
    Маркеры гидратации ReactРазбор исходного кода HTMLСредняя

    2. Обнаружение протокола RSC

    Протокол Flight использует специфический формат передачи данных:

    root@kitploit:~
    0:["$","div",null,{"children":"Hello"}]
    1:["$","$L1",null,{}]
    2:{"name":"ServerComponent"}
    

    Сканер ищет:

    • Content-Type: text/x-component
    • Формат фрагментов: {number}:{payload}
    • Маркеры ссылок: $, $L, $F, $@, $undefined

    3. Определение версии по отпечаткам

    Поиск шаблонов версий в:

    • JavaScript-бандлах (/_next/static/chunks/)
    • Манифестах сборки
    • Встроенных скриптах
    • Ссылках на пакеты ([email protected])

    Установка

    Требования

    • Python 3.8+
    • Библиотека requests

    Настройка

    root@kitploit:~
    # Clone or download the scanner files
    # Install dependencies
    pip install -r requirements.txt
    
    # Verify installation
    python3 cve-2025-55182-scanner.py --help
    

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

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

    root@kitploit:~
    # Single target
    python3 cve-2025-55182-scanner.py -t https://example.com
    
    # With verbose output
    python3 cve-2025-55182-scanner.py -t https://example.com -v
    

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

    root@kitploit:~
    # Create targets file (one URL per line)
    echo "https://app1.example.com" > targets.txt
    echo "https://app2.example.com" >> targets.txt
    
    # Scan all targets
    python3 cve-2025-55182-scanner.py -f targets.txt -o results.json
    

    Дополнительные параметры

    root@kitploit:~
    python3 cve-2025-55182-scanner.py -t https://example.com \
        --timeout 15 \
        --threads 10 \
        --user-agent "SecurityAudit/1.0" \
        -v \
        -o scan_results.json
    

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

    ПараметрОписаниеПо умолчанию
    -t, --targetURL одиночной цели-
    -f, --fileФайл со списком целей-
    -o, --outputФайл вывода в формате JSON-
    -v, --verboseПоказывать подробные доказательстваFalse
    --timeoutТаймаут запроса (секунды)10
    --threadsПараллельные потоки5
    --verify-sslПроверять SSL-сертификатыFalse
    --user-agentПользовательский User-AgentMozilla/5.0...
    --no-bannerСкрыть баннерFalse

    Использование модуля анализатора RSC

    Для более глубокого анализа протокола:

    root@kitploit:~
    python3 rsc_analyzer.py https://example.com 2>/dev/null
    

    Это обеспечивает детальный анализ протокола Flight и перечисление компонентов.


    Понимание результатов

    Категории статусов

    СтатусЗначениеТребуемые действия
    🔴 VULNERABLEПодтверждена уязвимая версияНемедленное исправление
    🔴 LIKELY_VULNERABLEReact 19.x с RSC, версия в уязвимом диапазонеСрочное исправление
    🟡 POTENTIALLY_VULNERABLEНайдены конечные точки RSC, версия неизвестнаПровести расследование и исправить
    🟢 NOT_VULNERABLEПодтверждена исправленная версияСледить за обновлениями
    🔵 UNKNOWNНе удалось определить статусТребуется ручная проверка
    ⚪ ERRORСбой сканированияПовторить попытку или проверить вручную

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

    root@kitploit:~
    ======================================================================
    Target: https://app.example.com
    Status: VULNERABLE
    Framework: Next.js
    Version: 19.1.0
    RSC Endpoints: /, /_next/data
    
    Evidence:
      - X-Powered-By header: Next.js
      - React version detected: 19.1.0
      - RSC Flight response at / (Content-Type: text/x-component)
      - Flight protocol markers detected at /
    
    Recommendations:
      → CRITICAL: Immediate patching required!
      → Upgrade React to 19.0.1, 19.1.2, or 19.2.1
      → Upgrade Next.js to latest patched version (15.0.5+, 16.0.7)
      → Enable WAF rules to block malicious RSC payloads
      → Monitor for anomalous POST requests to RSC endpoints
    ======================================================================
    

    Формат вывода JSON

    root@kitploit:~
    {
      "target": "https://app.example.com",
      "status": "VULNERABLE",
      "framework": "Next.js",
      "version": "19.1.0",
      "rsc_endpoints": ["/", "/_next/data"],
      "evidence": [
        "X-Powered-By header: Next.js",
        "React version detected: 19.1.0",
        "RSC Flight response at / (Content-Type: text/x-component)"
      ],
      "recommendations": [
        "CRITICAL: Immediate patching required!",
        "Upgrade React to 19.0.1, 19.1.2, or 19.2.1"
      ]
    }
    

    Уровни достоверности

    Насколько можно доверять результатам?

    Тип результатаДостоверностьПояснение
    VULNERABLE с версиейВЫСОКАЯ (90%+)Строка версии совпала с известной уязвимой версией
    VULNERABLE через заголовокВЫСОКАЯ (85%+)X-Powered-By раскрыл уязвимую версию
    LIKELY_VULNERABLEСРЕДНЕ-ВЫСОКАЯ (70-85%)Обнаружен React 19.x, RSC активен, версия явно не исправлена
    POTENTIALLY_VULNERABLEСРЕДНЯЯ (50-70%)Конечные точки RSC отвечают, но версия неизвестна
    NOT_VULNERABLEВЫСОКАЯ (85%+)Явно обнаружена исправленная версия
    UNKNOWNНИЗКАЯ (<50%)Собрано недостаточно информации

    Факторы, повышающие достоверность

    ✅ Явная строка версии найдена в бандлах
    ✅ Заголовок X-Powered-By раскрывает версию
    ✅ Присутствует несколько индикаторов RSC
    ✅ Подтверждён ответ протокола Flight
    ✅ Сервер принимает RSC POST-запросы

    Факторы, снижающие достоверность

    ❌ Информация о версии не раскрыта
    ❌ WAF/CDN маскируют ответы
    ❌ Нестандартная реализация фреймворка
    ❌ Интенсивное кэширование препятствует зондированию
    ❌ Ограничение частоты запросов блокирует обнаружение

    Сценарии ложных срабатываний

    СценарийПочему происходитСмягчение
    Устаревшая строка версии в кэшеCDN/кэш сборкиПроверить несколько конечных точек
    RSC отключён после обновленияИзменение конфигурации без пересборкиПроверить дату сборки
    Нестандартная реализация RSCПользовательский фреймворкРучная проверка

    Сценарии ложных отрицательных результатов

    СценарийПочему происходитСмягчение
    Версия удалена из бандловПроизводственная оптимизацияПроверить манифесты сборки
    WAF блокирует зондированиеСредства контроля безопасностиТестирование с разрешённого IP
    RSC на нестандартных путяхПользовательская маршрутизацияРасширить словарь путей
    SPA без индикаторов SSRКлиентский рендерингПроверить API-конечные точки

    Ограничения

    Что этот сканер не может делать

    1. Подтвердить эксплуатируемость — сканер обнаруживает индикаторы, а не фактическую эксплуатацию
    2. Обнаружить все конечные точки RSC — пользовательская маршрутизация может скрывать конечные точки
    3. Обойти WAF/CDN — агрессивная фильтрация может блокировать зондирование
    4. Анализировать минифицированный код — сильная обфускация ограничивает определение версии
    5. Оценивать внутренние приложения — требуется сетевой доступ к цели

    Факторы окружающей среды

    ФакторВлияние на обнаружение
    Cloudflare/WAFМожет блокировать зондирование и маскировать заголовки
    Кэширование CDNМожет выдавать устаревшую информацию о версии
    Балансировщики нагрузкиМогут направлять запросы к разным версиям приложения
    Kubernetes/контейнерыКаждый pod может отличаться
    Флаги функцийRSC может быть включён условно

    Рекомендуемые шаги проверки

    При критических находках всегда проверяйте с помощью:

    1. Просмотра package.json — проверьте фактически установленные версии
    2. Проверки артефактов сборки — изучите производственные бандлы
    3. Аудита зависимостей — npm audit или yarn audit
    4. Ручного тестирования конечных точек — подтвердите поведение RSC

    Рекомендации

    Если статус VULNERABLE или LIKELY_VULNERABLE

    Немедленные действия (0–24 часа):

    1. Немедленно установите исправление

      root@kitploit:~
      npm install [email protected] [email protected]
      npm install [email protected]  # or latest patched
      
    2. Включите правила WAF — Cloudflare, Akamai и AWS WAF развернули защитные правила

    3. Отслеживайте журналы на предмет подозрительных POST-запросов к конечным точкам RSC

    Краткосрочные действия (24–72 часа):

    1. Просмотрите журналы доступа на предмет попыток эксплуатации
    2. Внедрите ограничение частоты запросов на конечных точках RSC
    3. По возможности рассмотрите аутентификацию для серверных действий

    Если статус POTENTIALLY_VULNERABLE

    1. Вручную проверьте версии React/Next.js в package.json
    2. Проверьте, действительно ли RSC включён в конфигурации
    3. Примените исправления в качестве меры предосторожности
    4. Запланируйте полную оценку безопасности

    Если статус UNKNOWN

    1. Убедитесь, что цель доступна
    2. Проверьте наличие помех со стороны WAF/CDN
    3. Попробуйте ручное снятие отпечатков
    4. Просмотрите документацию приложения

    Интеграция с рабочими процессами оценки

    Для оценок портфеля PE

    root@kitploit:~
    # Batch scan all company assets
    cat domains.txt | while read domain; do
        python3 cve-2025-55182-scanner.py -t "$domain" -o "results_${domain//\//_}.json"
    done
    
    # Aggregate results
    jq -s '[.[] | select(.status == "VULNERABLE" or .status == "LIKELY_VULNERABLE")]' results_*.json > critical_findings.json
    

    Интеграция с CI/CD

    root@kitploit:~
    # GitHub Actions example
    - name: CVE-2025-55182 Check
      run: |
        python3 cve-2025-55182-scanner.py -t ${{ env.APP_URL }} -o results.json
        if grep -q '"status": "VULNERABLE"' results.json; then
          echo "::error::Critical vulnerability detected!"
          exit 1
        fi
    

    Ссылки

    Официальные уведомления

    • React Security Advisory
    • Vercel Security Notice
    • NVD - CVE-2025-55182

    Технический анализ

    • Wiz Research Blog
    • Snyk Advisory
    • Akamai Analysis

    Ресурсы производителей

    • Cloudflare WAF Rules — автоматическая защита развёрнута
    • Akamai Rapid Rules — правило 3000976

    Журнал изменений

    ВерсияДатаИзменения
    1.0.02025-12-03Первоначальный выпуск

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

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

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