Эксплойты для критической уязвимости в Node.js-библиотеке, известной как React2Shell (CVE-2025-55182), продолжают активно использоваться в дикой природе. Несмотря на то, что с момента публикации данных об уязвимости прошло достаточно времени, атаки не прекращаются. Специалисты по безопасности отмечают, что на данный момент большинство серверов, уязвимых к базовым попыткам эксплуатации, уже могли быть скомпрометированы. Однако это не останавливает злоумышленников, которые адаптируют свои методы.
Описание
Согласно данным мониторинга сетевой активности, сегодня наиболее распространенная версия вредоносного сценария (полезная нагрузка, payload) для React2Shell имеет конкретную цель - загрузку и запуск криптомайнера или рекламного ПО (adware). Ключевой компонент эксплойта представляет собой сложную конструкцию, использующую прототипное загрязнение (prototype pollution) в JavaScript для выполнения произвольного кода на сервере.
В упрощенном виде вредоносная логика выглядит так: сценарий загружает бинарный файл с IP-адреса 51.81.104[.]115 по протоколу HTTP и сохраняет его в файловой системе атакуемого сервера. Чаще всего целью для сохранения становятся общедоступные для записи каталоги, такие как "/dev/shm", "/tmp" или "/dev/lrt". После успешной загрузки сценарий изменяет права доступа к файлу, делая его исполняемым. Хотя в представленном коде явный вызов файла не виден, контекст и анализ антивирусных систем предполагают, что конечной целью является его выполнение.
Анализ файла на агрегаторе угроз VirusTotal показывает неоднозначные результаты: некоторые движки классифицируют его как потенциально нежелательное рекламное ПО, другие - как криптомайнер. Такая двусмысленность часто затрудняет первоначальное обнаружение. Злоумышленники целенаправленно выбирают пути вроде "/dev/shm", поскольку эти области памяти, доступные как файловая система (tmpfs), обычно разрешают запись любым процессам, что гарантирует успех операции даже для приложений, работающих с ограниченными привилегиями.
Эксперты подчеркивают, что эксплуатация данной уязвимости обычно не требует прав суперпользователя (root). Современные веб-приложения редко запускаются от имени root, что делает атаку еще более опасной: для успешного проникновения достаточно уязвимого кода в приложении, работающем под обычным пользователем. Фактически, уязвимость позволяет обойти стандартные модели безопасности.
В качестве одной из мер защиты для систем на базе Linux специалисты традиционно рекомендуют монтировать раздел "/tmp" с опцией "noexec". Эта опция запрещает выполнение любых бинарных файлов из данного каталога, что блокирует распространенный вектор атаки, когда вредоносное ПО скачивается во временную директорию и запускается оттуда. Однако на практике эта рекомендация не всегда легко применима. Многие легитимные приложения и процессы по историческим или практическим причинам могут полагаться на возможность запуска скриптов из "/tmp". Поэтому внедрение такой жесткой меры требует тщательного тестирования и может привести к нарушению работоспособности.
Более надежным и приоритетным решением остается немедленное применение патчей. Разработчики уязвимой библиотеки уже выпустили исправления, и основная задача системных администраторов - обеспечить обновление всех зависимостей в своих проектах. Постоянный мониторинг сетевого трафика на предмет подозрительных исходящих соединений, особенно на нестандартные порты или к неизвестным IP-адресам, также может помочь в выявлении уже состоявшихся компрометаций. Регулярный аудит процессов и файловых систем серверов на наличие неожиданных исполняемых файлов в каталогах "/tmp", "/dev/shm" и подобных является необходимой практикой.
Текущая ситуация с CVE-2025-55182 наглядно демонстрирует классический цикл жизни уязвимости. Даже после широкого освещения и публикации фиксов, она продолжает приносить плоды злоумышленникам, которые автоматизируют атаки и нацеливаются на отстающие в обновлениях системы. Это служит очередным напоминанием о критической важности своевременного управления обновлениями и применения многослойной защиты, особенно для компонентов, обрабатывающих пользовательский ввод.
Индикаторы компрометации
IPv4
- 51.81.104.115
MD5
- c798b4bcf337d1c7420871b9a4f55fa8
SHA1
- ca5515cb5a378bf71c5bef02184b083c126786b7
SHA256
- 895f8dff9cd26424b691a401c92fa7745e693275c38caf6a6aff277eadf2a70b