CVE-2025-55182 (React2Shell / React4Shell) — это реальная и критическая уязвимость, обнаруженная в декабре 2025 года в механизме React Server Components (RSC).
- CVSS-оценка: 10.0 (максимальный уровень опасности).
- Тип уязвимости: Удалённое выполнение кода (RCE) без аутентификации.
- Причина: небезопасная десериализация RSC-пейлоадов в пакетах
react-server-dom-webpack,react-server-dom-parcel,react-server-dom-turbopack. - Уязвимые версии React:
19.0.0,19.1.0,19.1.1,19.2.0
Исправлено в:19.0.1,19.1.2,19.2.1 - Уязвимые версии Next.js (ветки 15.x и 16.x, а также canary-релизы с
14.3.0-canary.77):
Например:15.0.4,15.1.8, ...,16.0.6
Исправлено в:15.0.5,15.1.9,15.2.6,15.3.6,15.4.8,15.5.7,16.0.7 - Альтернативный CVE
CVE-2025-66478(для Next.js) был отклонён NIST как дубликат.
Условия эксплуатации:
- RSC (React Server Components) должен быть включён — это стандарт в Next.js App Router.
- Даже если вы не пишете Server Actions вручную, фреймворк может автоматически создавать уязвимые эндпоинты.
- Атака возможна только при наличии сетевого доступа к серверу — без логина, без токена, без прав.
Масштаб угрозы:
- По данным Wiz: ~39% облачных сред содержат уязвимые инстансы.
- BI.ZONE: от 10 000 до 25 000 российских сайтов могут быть под угрозой.
- Palo Alto Unit 42: более 968 000 серверов в мире используют уязвимые версии.
- Уже зафиксированы активные сканирующие атаки (в т.ч. из Китая), PoC-эксплоиты и их фейковые версии.
Рекомендуемые меры защиты:
- Немедленно обновите зависимости
# Для React npm install react@19.0.1 react-dom@19.0.1 react-server-dom-webpack@19.0.1 # Для Next.js (выберите актуальную версию) npm install next@16.0.7 # или npm install next@15.5.7
- Проверьте
package-lock.json/yarn.lock, чтобы убедиться, что старые версии не остались в зависимостях.
- Включите WAF-правила:
- Cloudflare, AWS, Akamai, Google Cloud и Fastly уже развернули защиту.
- Временно ограничьте доступ к
/api/или RSC-эндпоинтам, если обновление невозможно сразу. - Не используйте фейковые PoC из интернета — многие из них содержат
child_process.execилиfs.writeFile, которые не работают в Next.js, и могут ввести в заблуждение.
Дополнительно:
- Уязвимость также затрагивает другие RSC-реализации:
Vite RSC, Parcel RSC, React Router (preview), RedwoodJS, Waku. - Кевин Бомонт (Kevin Beaumont) напоминает: уязвимость не затрагивает классический клиентский React без RSC.
Что делать прямо сейчас?
Проверьте версии в package.json
Обновите до патченных версий
Пересоберите и задеплойте приложение
Убедитесь, что в production нет уязвимых версий
Всего через два дня после раскрытия критической уязвимости React2Shell исследователи из компании Sysdig обнаружили в скомпрометированном Next.js-приложении новую малварь EtherRAT. Вредонос использует смарт-контракты Ethereum для связи и закрепляется в Linux-системах сразу пятью способами.