Очередная опасная брешь обнаружена в популярной экосистеме разработки на языке JavaScript. В Банке данных угроз безопасности информации (BDU) была зарегистрирована новая запись с идентификатором BDU:2026-06464. Речь идет об уязвимости в библиотеке vm2, которую широко используют для изоляции кода при работе с серверным исполнением скриптов. Проблема получила международный идентификатор CVE-2026-24120 и максимально возможные оценки по международному стандарту CVSS - 9,8 балла из десяти по версии 3.1 и 10 баллов по версии 2.0. Это автоматически переводит её в категорию критических.
Детали уязвимости
Уязвимость затрагивает все версии vm2 ниже 3.10.5. Поставщиком программного обеспечения выступает Node.js Foundation - некоммерческая организация, развивающая среду выполнения Node.js. Сама же библиотека vm2 представляет собой инструмент для создания так называемой "песочницы" - изолированной среды, в которой можно безопасно выполнять непроверенный код, не опасаясь, что он навредит основной системе. Её часто используют поставщики облачных услуг, платформы для совместного редактирования кода, а также разработчики, встраивающие пользовательские скрипты в свои приложения.
Суть обнаруженного дефекта кроется в функции resetPromiseSpecies(). При её обработке библиотека неправильно управляет генерацией кода, что позволяет злоумышленнику внедрить вредоносную инструкцию. Технически это классифицируется как две смежные ошибки. Первая - внедрение кода (CWE-94), вторая - нарушение механизма защиты данных (CWE-693). В результате атакующий, отправляя специально сформированный запрос на сервер, где установлена уязвимая версия vm2, может вырваться из пределов песочницы и выполнить произвольные команды на хосте. Ему не нужна для этого предварительная аутентификация - атака возможна удаленно, без каких-либо учётных данных.
Наличие рабочего эксплойта уже подтверждено в открытом доступе. Это означает, что провести атаку может не только профессиональный исследователь безопасности, но и любой человек, загрузивший готовый код. Как сообщается в классификации, способы эксплуатации включают как прямую инъекцию вредоносного кода, так и несанкционированный сбор информации. На практике это может привести к краже данных с сервера, установке программ-вымогателей (ransomware) или полному захвату управления над машиной, где запущен уязвимый процесс.
Библиотека vm2 - не просто рядовой пакет. Её используют для исполнения скриптов от имени пользователей в тех случаях, когда полное доверие к коду отсутствует. Например, на образовательных платформах, где студенты пишут и запускают код прямо в браузере, или в сервисах автоматизации, где клиенты могут вставлять свои формулы и алгоритмы. Если изолирующая оболочка даёт сбой, граница между безопасной средой и операционной системой исчезает. Злоумышленник получает доступ к файловой системе, сетевым ресурсам и другим процессам. Учитывая, что vm2 часто работает с повышенными привилегиями, последствия могут быть катастрофическими - от утечки баз данных до остановки работы целых сервисов.
Производитель, Node.js Foundation, уже подтвердил уязвимость и выпустил исправление. Устранение проблемы выполнено в версии 3.10.5. Разработчикам и системным администраторам настоятельно рекомендуется как можно скорее обновить библиотеку до указанной версии или выше. Ссылка на новую версию опубликована в официальном репозитории проекта на платформе GitHub. Кроме того, выпущен отдельный бюллетень безопасности с подробным описанием уязвимости и рекомендациями по переходу.
Важно понимать, что данный инцидент - не единичный случай. Библиотека vm2 уже не раз становилась объектом атак: ранее в ней находили другие критические уязвимости, связанные с обходом песочницы. Постоянное обновление является единственным надёжным способом защиты. Тем, кто по каким-либо причинам не может мгновенно обновить пакет, стоит временно отключить возможность исполнения пользовательского кода через vm2 или перенести такую функциональность на отдельный изолированный сервер.
Итог: уязвимость BDU:2026-06464 - серьёзная угроза для всех, кто использует vm2 версий ниже 3.10.5. Критическая оценка CVSS, готовый эксплойт и возможность удалённого выполнения кода без аутентификации ставят эту проблему в один ряд с наиболее опасными инцидентами последних лет. Единственная адекватная реакция - немедленное обновление программного обеспечения. Любая задержка грозит компрометацией серверов и утечкой конфиденциальных данных.
Ссылки
- https://bdu.fstec.ru/vul/2026-06464
- https://www.cve.org/CVERecord?id=CVE-2026-24120
- https://github.com/patriksimek/vm2/security/advisories/GHSA-qvjj-29qf-hp7p
- https://github.com/patriksimek/vm2/releases/tag/v3.10.5