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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-55182-React2Shell-Exploit — Инструмент proof-of-concept для демонстрации критической уязвимости React2Shell | Kitploit
Инструменты/GitHubGitHub/m4rgs/cve-2025-55182-react2shell-exploit
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и Образование
GitHubm4rgs/cve-2025-55182-react2shell-exploit

CVE-2025-55182-React2Shell-Exploit

Инструмент proof-of-concept для демонстрации критической уязвимости React2Shell

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий
118 месяцев назадЕщё не проверено

Next.js React2Shell (CVE-2025-55182) Expl0it

Инструмент proof-of-concept для демонстрации критической уязвимости React2Shell (CVE-2025-55182 / CVE-2025-66478) только в авторизованных локальных тестовых средах.

⚠️ КРИТИЧЕСКОЕ ПРЕДУПРЕЖДЕНИЕ: АКТИВНАЯ ЭКСПЛУАТАЦИЯ

  • ТОЛЬКО ДЛЯ ЗАКОННОГО ИСПОЛЬЗОВАНИЯ: Используйте исключительно против систем, которыми вы владеете или на тестирование которых имеете явное письменное разрешение.
  • ТРЕБУЕТСЯ НЕМЕДЛЕННОЕ ОБНОВЛЕНИЕ: Если система уязвима, необходимо немедленно обновить. Обновление — единственная окончательная мера защиты.
  • БЕЗ ГАРАНТИЙ: Этот инструмент предназначен только для образовательных целей и авторизованных оценок безопасности.

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

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

  • Первоисточник: Небезопасная десериализация в серверном пакете React. Логика декодирования протокола Flight не выполняет надлежащую проверку управляемых атакующим полезных нагрузок, что позволяет загрязнение прототипов и влияние на пути выполнения на стороне сервера.
  • Вектор атаки: Без аутентификации. Атакующие могут запустить эксплойт, отправив один специально сформированный HTTP POST-запрос на конечную точку сервера.
  • Надежность: Тестирование показало, что эксплуатация имеет почти 100% надежность против уязвимых конфигураций по умолчанию.
  • Область применения: Приложение уязвимо, если оно поддерживает React Server Components (RSC), даже если оно явно не реализует серверные функции.

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

Базовый синтаксис

root@kitploit:~
chmod +x pwn-nextjs.sh
./pwn-nextjs.sh [TARGET_URL] [COMMAND]

Примеры

root@kitploit:~
# Целевой URL
./pwn-nextjs.sh https://vulnerable-app.example.com "whoami"
root

🎯 Пострадавшее ПО и исправленные версии

Уязвимость возникает в определенных пакетах React, затрагивая любую платформу, которая их включает.

Не затронуты: Next.js 13.x, стабильные версии Next.js 14.x, приложения Pages Router и Edge Runtime не затронуты.

🔬 Технические детали и эксплуатация

Дефект протокола Flight

Протокол RSC Flight сериализует данные для взаимодействия клиент-сервер. Уязвимость заключается в логике десериализации на сервере, которая небезопасно расширяет свойства объекта из входящей полезной нагрузки без надлежащей проверки. Это позволяет атакующему внедрить вредоносные ключи (например, __proto__ или constructor) в запрос, что приводит к загрязнению прототипов.

После загрязнения цепочки прототипов сервер следует путям выполнения, контролируемым атакующим. Это можно связать в цепочку для выполнения произвольного JavaScript-кода с привилегиями сервера, что приводит к полному удаленному выполнению кода (RCE).

Действия после эксплуатации

Исследователи безопасности наблюдали успешные эксплойты, приводящие к:

  • Сбору учетных данных: Попытки выявить и извлечь облачные учетные данные (например, из .aws/credentials).
  • Майнингу криптовалют: Развертывание майнеров, таких как XMRig.
  • Развертыванию вредоносного ПО: Установка платформ, таких как Sliver C2.

🛡️ Смягчение и реагирование

1. Немедленное обновление (основное решение)

Обновление обязательно и является единственным способом полностью устранить уязвимость. Не существует параметра конфигурации для отключения уязвимого пути кода.

root@kitploit:~
# Для пользователей Next.js обновитесь до последней исправленной версии в вашей линии релиза.
# Пример: если вы на Next.js 15.5.x:
npm install [email protected]

# Также убедитесь, что зависимости React обновлены:
npm install react@latest react-dom@latest

Проверьте, что ваши файлы package-lock.json или yarn.lock отражают исправленные версии пакетов react-server-dom-* (19.0.1, 19.1.2 или 19.2.1).

2. Временные меры защиты (правила WAF)

Пока идет обновление, разверните правила Web Application Firewall (WAF) для блокировки попыток эксплойта:

  • AWS WAF: Управляемая группа правил AWSManagedRulesKnownBadInputsRuleSet (v1.24+) включает правила для этого CVE.
  • Google Cloud Armor: Доступно предварительно настроенное правило cve-canary.
  • Palo Alto Networks: Подписи доступны для таких продуктов, как Snort.

Примечание: Правила WAF — это временное, неполное смягчение. Они не заменяют необходимость обновления.

3. Индикаторы компрометации (IoC)

Проверьте логи на следующие признаки попыток эксплуатации:

  • Сеть: POST-запросы с заголовками next-action или rsc-action-id. Тела запросов, содержащие шаблоны $@ или "status":"resolved_model".
  • Хост: Неожиданное выполнение команд (whoami, id, uname), чтение /etc/passwd или запись файлов в /tmp/ (например, pwned.txt) процессами Node.js.

⚖️ Правовые, этические аспекты и ответственное раскрытие

Этот инструмент демонстрирует уязвимость с оценкой CVSS 10.0 (максимальная серьезность), которая активно эксплуатируется при поддержке государств.

  • Требуется авторизация: Тестирование должно проводиться только в средах, которыми вы владеете и управляете (например, localhost, изолированные лаборатории). Неавторизованное тестирование незаконно.
  • Ответственное раскрытие: Если вы обнаружили уязвимую стороннюю систему, не эксплуатируйте ее. Задокументируйте находки и ответственно раскройте их владельцу системы.
  • Цель: Этот инструмент предназначен для образования, авторизованного тестирования на проникновение и помощи специалистам по безопасности в понимании угрозы для приоритизации обновлений.

🔗 Ссылки и благодарности

  • Официальное уведомление Next.js (CVE-2025-66478)
  • Запись NVD для CVE-2025-55182
  • Обнаружение: Лахлан Дэвидсон, обнаруживший и ответственно раскрывший уязвимость.
  • Данные об угрозах: AWS, Wiz и другие команды, отслеживающие эксплуатацию в дикой природе.

Помните: Этот инструмент демонстрирует, почему обновление срочно необходимо. Используйте эти знания для улучшения безопасности и защиты систем, а не для их компрометации. Убедитесь, что все ваши зависимости обновлены до исправленных версий, перечисленных выше.

АВТОР

TAHA MOUNIR

Скачать инструмент
КомпонентЗатронутые версииИсправленные версииПримечания
Пакеты React
(react-server-dom-webpack, -parcel, -turbopack)
19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1, 19.1.2, 19.2.1Источник вышестоящей проблемы.
Next.js (App Router)15.x, 16.x,
14.3.0-canary.77 и выше
15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7Основная затронутая платформа.
Другие платформыReact Router, Waku, RedwoodJS, Parcel (@parcel/rsc), Vite RSC PluginОбновите до версий, использующих исправленные пакеты React (>19.0.1, 19.1.2, 19.2.1).Уязвимо при использовании затронутых пакетов React.