Злоумышленники активно используют критическую уязвимость CVE-2025-11953 в Metro-сервере React Native, чтобы заражать системы разработчиков вредоносами для Windows и Linux.
Metro — это JavaScript-бандлер для проектов на React Native по умолчанию. Он может привязываться к внешним сетевым интерфейсам и открывать HTTP-эндпоинты, предназначенные только для локального использования на этапе разработки. Именно в этих эндпоинтах и была обнаружена проблема.
В ноябре 2025 года уязвимость CVE-2025-11953, также получившую название Metro4Shell, нашли специалисты из компании JFrog. Баг связан с тем, что эндпоинт /open-url принимал POST-запросы с пользовательскими URL-адресами, которые затем передавались в функцию open() без какой-либо очистки. Это позволяло неаутентифицированным атакующим выполнять произвольные команды в Windows через POST-запрос, а в Linux и macOS — запускать исполняемые файлы с ограниченным контролем параметров.
Уязвимость затронула версии @react-native-community/cli-server-api с 4.8.0 до 20.0.0-alpha.2. Патч был выпущен в версии 20.0.0. При этом после публичного раскрытия информации о проблеме в сети появились множественные proof-of-concept эксплоиты.
Компания VulnCheck впервые обнаружила активную эксплуатацию CVE-2025-11953 еще 21 декабря 2025 года. Атаки продолжились 4 и 21 января, и каждый раз в них использовались идентичные полезные нагрузки. Во всех трех случаях атакующие доставляли закодированные в base64 PowerShell-скрипты, скрытые в теле HTTP POST-запросов к эндпоинтам.
После декодирования и запуска пейлоад выполняет следующие действия:
- отключает защиту, добавляя в исключения Microsoft Defender рабочую директорию и временную папку через Add-MpPreference;
- устанавливает TCP-соединение с управляющей инфраструктурой атакующих и запрашивает следующую стадию атаки через GET /windows;
- сохраняет полученные данные на диск как исполняемый файл во временную директорию;
- запускает скачанный бинарник со строкой аргументов, предоставленных атакующими.
Windows-пейлоад представляет собой упакованный UPX бинарник, написанный на Rust, с базовой антианализной логикой. Отмечается, что в той же инфраструктуре хостился аналогичный linux-бинарник, что указывает на кроссплатформенный характер атак.
По данным ZoomEye, в настоящее время в интернете можно найти примерно 3500 доступных Metro-серверов React Native.
«CVE-2025-11953 примечательна не своим существованием, а тем, что она снова подтверждает паттерн, который защитникам приходится переосмысливать раз за разом: инфраструктура разработки становится продакшн-инфраструктурой в тот момент, когда к ней можно получить доступ извне, независимо от первоначальных намерений», — отмечают специалисты VulnCheck.

