Критическая уязвимость RCE в React Server Components (React2Shell) — срочные действия для команд полного стека
Summary
- Критическая уязвимость удаленного выполнения кода (RCE) без аутентификации в React Server Components — широко известная как "React2Shell" (CVE‑2025‑55182) — была раскрыта в начале декабря 2025 года. Официальные патчи для React были опубликованы, а связанные фреймворки (в частности, Next.js) выпустили уведомления и исправления. Необходимы немедленные действия для приложений, доступных в интернете, которые используют React Server Components или серверные функции. (react.dev)
Why this matters to full‑stack developers
- Уязвимость позволяет единственному специально подготовленному HTTP-запросу выполнять произвольный код на уязвимом сервере, обрабатывающем полезные нагрузки React Server Component / Server Function; уязвимость имеет оценку CVSS 10.0 и была замечена в активной эксплуатации. Организации сообщили о реальных попытках эксплуатации, которые доставляют майнеры и бэкдоры, что поднимает это с теоретического уровня до уровня оперативной чрезвычайной ситуации. (react.dev)
- Затронутые пакеты включают react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack и некоторые версии Next.js, которые от них зависят. Многие сборщики и фреймворки, которые включают или проксируют поддержку RSC, могут перенести уязвимость на развернутые серверы. (react.dev)
Immediate checklist (minutes → hours)
- Inventory: идентифицируйте службы, которые открывают серверные конечные точки React или включают пакеты RSC.
- Поиск этих пакетов в вашем дереве зависимостей:
react-server-dom-webpack,react-server-dom-parcel,react-server-dom-turbopack, и проверьте версииnext, если вы используете Next.js. (react.dev)
- Поиск этих пакетов в вашем дереве зависимостей:
- Patch now: обновите затронутые пакеты до исправленных версий:
- Пакеты React RSC были исправлены в версиях, таких как 19.0.1, 19.1.2 и 19.2.1. Обновите немедленно и пересоберите/разверните. (react.dev)
- Обновите Next.js до исправленных версий, перечисленных в уведомлении Next.js; следуйте инструментам устранения неполадок фреймворка, если они доступны. Команда Next.js также опубликовала инструмент исправления и рекомендации. (nextjs.org)
- Если открытое приложение могло быть в сети и не было исправлено, выполните ротацию секретов: API-ключи, учетные данные базы данных, ключи сервисных аккаунтов и любые токены, используемые приложением (Next.js явно рекомендует ротацию для приложений, которые были активны и не были исправлены). (nextjs.org)
- Примените немедленные меры смягчения, если вы не можете сразу исправить:
- Блокируйте или ограничивайте доступ к любым конечным точкам RSC/Server Function через правила брандмауэра/WAF или правила входа.
- Разверните правила WAF от поставщика или защиты облачного провайдера, где это возможно; крупные хосты (например, Vercel) внедрили меры защиты для защиты размещенных проектов. (vercel.com)
Detection and triage (hours → days)
- Проверьте журналы и конечные точки на наличие подозрительных, аномальных полезных нагрузок RSC и неожиданных дочерних процессов, записей файлов или исходящих соединений, исходящих с серверов приложений.
- Ищите индикаторы после эксплуатации: вновь созданные системные пользователи, неожиданные SSH-ключи, cronjobs или бинарные файлы криптовалютных майнеров. Microsoft и Google Cloud опубликовали рекомендации по обнаружению и реагированию после наблюдения активной эксплуатации. (microsoft.com)
- Если вы обнаружите признаки компрометации, рассматривайте это как полноценный инцидент: изолируйте затронутые хосты, сохраните судебные доказательства, выполните ротацию учетных данных, пересоберите из известных хороших источников и уведомите заинтересованные стороны.
Longer‑term recommendations (teams and platform owners)
- Минимизируйте поверхность атаки: избегайте открытия RSC Server Functions из публичных конечных точек, если это не необходимо; предпочитайте безсерверные песочницы или выделенные бэкенд API с жесткой проверкой входных данных и аутентификацией.
- Соблюдайте гигиену зависимостей: поддерживайте точный SBOM, фиксируйте и сканируйте транзитивные пакеты, и запускайте сканирование уязвимостей зависимостей как часть CI (включая проверку на наличие упакованных пакетов react-server-dom-* в фреймворках и выходных данных сборки).
- Используйте воспроизводимые сборки и неизменяемые артефакты развертывания, чтобы вы могли быстро пересобрать и развернуть после экстренного патча.
- Рассмотрите возможность добавления защит в режиме выполнения (ограничение на уровне процесса, мониторинг на основе eBPF) на серверах, которые обрабатывают декодирование произвольных полезных нагрузок.
Why this is a watershed event
- Эта уязвимость показывает, как функции серверной стороны, предназначенные для удобства разработчиков (серверные компоненты / серверные функции), могут открывать новые поверхности атак удаленного выполнения, если существует ошибка декодирования/сериализации. Быстрая эксплуатация в реальном времени и влияние на различные экосистемы (React, Next.js, сборщики, хостинг) делают это одним из наиболее срочных событий в области цепочки поставок/безопасности для веб-команд в 2025–26 годах. (react.dev)
Key references
- Официальный бюллетень безопасности React и детали патча (React2Shell — CVE‑2025‑55182). (react.dev)
Source:
Source
Читать дальше
Изменения в FedCM в Chrome 143: структурированные утверждения ID, более строгие метаданные клиента и обновления API
31 января 2026 г.Chrome 143 (опубликован 12 января 2026 года) изменяет поток идентификации FedCM: токены утверждения ID могут быть структурированным JSON, проверка client_metadata становится обязательной, и несколько полей API перемещаются/переименовываются — требуется миграция перед Chrome 145.
Undici CVE-2026-22036: неограниченная цепочка декомпрессии приводит к исчерпанию ресурсов — выпущены патчи
30 января 2026 г.14 января 2026 года в уведомлении о безопасности для undici (HTTP-клиент Node.js) описывается уязвимость неограниченной цепочки декомпрессии, которая может привести к высокому использованию CPU и памяти. Команды полного стека должны найти и обновить затронутые версии undici и добавить легкие защитные меры на уровне выполнения.
Уязвимость CSRF в Server Actions React Router / Remix (CVE-2026-22030)
29 января 2026 г.React Router и @remix-run/server-runtime устранили проблему CSRF средней степени серьезности, затрагивающую обработчики действий на стороне сервера и нестабильные действия сервера React — что полностековым командам необходимо проверить и исправить сейчас.