Специалисты Sonatype обнаружили NPM-пакеты, распространявшие под видом Noblox.js вымогательское ПО и инфостилеры

Не успели специалисты Sonatype обнаружить в этом месяце вредоносное ПО для майнинга криптовалюты в трех JavaScript-библиотеках, загруженных в официальный репозиторий NPM, как появилась новая напасть. Речь пойдет о еще двух NPM-пакетах — noblox.js-proxy и noblox.js-proxies. Злоумышленники воспользовались известным способом, когда написание слова очень близко к написанию известных названий, в данном случае — пакета Noblox.js.proxied. Или так называемый тайпсквоттинг, когда злоумышленник или просто ловкий делец пользуется ошибками в написании, при которых не сразу заметна ошибка, и пользователь считает легитимным написание того или иного названия, в данном случае API обертку для Roblox под названием noblox.js-proxied.

Данные пакеты заражали жертв целым наборов вирусов — трояном для похищения паролей, trollware-программами (неопасным ПО, главной целью которого является раздражение пользователя и троллинг) и вымогательским ПО MBRLocker, которое преступники для большего нагнетания страха выдавали за вирус GoldenEye. Программа-вымогатель GoldenEye появилась в 2016 году как Petya (не путать с ExPetr), а в 2017 году она уже повторилась под названием GoldenEye. Вместо шифрования отдельных файлов она шифровала целиком жесткие диски жертв. Это достигалось путем шифрования основной таблицы файлов (MFT), что сделало невозможным доступ к файлам на жестком диске.

Псевдо-Petya/GoldenEye после заражения перезагружал компьютер и на экране появляется логотип настоящего ПО Petya/GoldenEye.

После нажатия на клавишу ввода на экран выводилась записка с требованием выкупа. По оценкам независимых специалистов по информационной безопасности в Сети эти пакеты были созданы с целью вывода из строя системы и издевательства над пользователем, нежели получения выкупа. 

Радует быстрое обнаружение данных пакетов, а точнее, опечаток в их названиях. Благодаря такому оперативному выявлению вирусов один пакет скачали 281 раз, второй — 106 раз. Потому что официальная  Noblox.js является открытой библиотекой JavaScript API для популярной игры Roblox. Пользователи используют эту библиотеку для создания внутриигровых скриптов, которые взаимодействуют с веб-сайтом Roblox. Она загружена на сегодняшний день более 700 тысяч раз. Как видно, злоумышленники рассчитывали на больший масштаб заражения. 

В ходе поисков вредоносного ПО первый пакет Noblox.js-proxy был отмечен автоматической системой обнаружения вредоносных программ Sonatype, а при его изучении исследовательская группа по безопасности нашла noblox.js-proxies — второй вредоносный пакет. На первый взгляд, оба пакета выглядели нормально, поскольку на странице NPM отображается их README для официального пакета Noblox. Данная ситуация подчеркивает важность симбиоза работы автоматических системы и человека в сфере защиты информационных систем.

После добавления в проект и запуска вредоносных NPM-библиотек выполнялся скрипт postinstall.js. Обычно скрипт используется для выполнения легитимных команд после установки библиотек, но в данном случае он запускает на компьютере жертвы цепочку вредоносных действий. После выполнения скрипт запускает сильно измененный  файл batch с именем nobox.bat.  Этот Batch-скрипт загружал вредоносные исполняемые файлы из сети доставки контента (Content Delivery Network, CDN) Discord, которые отвечали за отключение защитных механизмов, обеспечение постоянного присутствия на скомпрометированном устройстве, хищение учетных данных, файлов cookie и истории из браузера. Также он заражал устройство вымогателем Monster Ransomware — тем самым псевдо-GoldenEye.

Что касается проблем заражения через Discord, летом 2021 года специалисты компании Sophos уже предупреждали, что распространение вредоносного ПО через сеть доставки контента Discord становится все более популярным. На сегодня около 4% всего вредоносного ПО приходится на нее.

Читайте так же: