Исследователи безопасности зафиксировали реальные атаки, в которых злоумышленники эксплуатируют серьёзную уязвимость в популярном инструменте разработки React Native Metro Development Server, входящем в пакет @react-native-community/cli.
Что за уязвимость?
Уязвимость получила идентификатор CVE-2025-11953 и прозвище Metro4Shell. Её классифицируют как удалённое выполнение кода (RCE) с высоким уровнем опасности CVSS 9.8, что близко к максимальному рейтингу. Это значит, что злоумышленник, не имея учётной записи и доступа, может отправить специально сформированный запрос на сервер разработчика и выполнить на нём произвольные команды.
Проблема связана с тем, что Metro Development Server по умолчанию может слушать сетевые интерфейсы и принимает HTTP-запросы, в том числе на уязвимый эндпоинт /open-url, который неправильно обрабатывает входящие данные, позволяя внедрить команду в операционную систему.
Как атакуют
По данным компании VulnCheck, первые случаи эксплуатации уязвимости в реальных условиях были зафиксированы 21 декабря 2025 года. У атак нет признаков экспериментального характера т.к. злоумышленники используют её систематически и на протяжении нескольких недель.
В ходе атак на ловушки был отправлен Base64-кодированный PowerShell-скрипт. После декодирования он:
добавляет исключения в Microsoft Defender для текущей директории и временной папки;
устанавливает необработанное TCP-соединение с инфраструктурой злоумышленников;
загружает исполняемый файл и сохраняет его во временной папке;
запускает его.
Загруженный бинарный файл написан на Rust и содержит базовые механизмы затруднения анализа, что усложняет обнаружение и исследование вредоносного кода.
Известные IP-адреса, с которых идут активные попытки эксплуатации:
5.109.182[.]231
223.6.249[.]141
134.209.69[.]155
Почему это серьёзно
Metro - это основной инструмент для сборки и запуска приложений React Native в процессе разработки. Ошибка в нём ставит под угрозу не только тестовые, но и развёрнутые системы, если сервер Metro доступен из внешней сети. При этом многие разработчики могут случайно открыть этот сервер наружу, не осознавая риска.
Несмотря на активные атаки, уязвимость до сих пор мало обсуждается публично в сообществе безопасности, и многие организации ещё не осознали масштаба угрозы.
Что делать разработчикам
Чтобы снизить риски:
убедитесь, что ваш Metro-сервер не доступен из внешней сети;
обновите пакеты
@react-native-community/cliдо последних версий, где проблема уже исправлена;ограничьте сетевой доступ к средам разработки с помощью брандмауэров и VPN;
следите за обновлениями безопасности в экосистеме npm и React Native.
Источник: HN