Специалисты Emsisoft обнаружили вымогатель на JavaScript

Специалисты компании Emsisoft обнаружили вредоносную программу — вымогатель, которая написана на JavaScript. Она получила название Ransom32 и используется злоумышленниками для вредоносных кампаний, аналогичных распространению многих других семейств такого типа вредоносного ПО. Злоумышленники выбрали высокий уровень анонимности для работы с Ransom32, для связи со своим управляющим C&C-сервером вымогатель использует анонимную сеть Tor, а оплата выкупа осуществляется в биткоинах.

6b802e06a463466b9e3d46368e5641f2.jpg

Использование JavaScript делает вымогатель кроссплатформенным, он может использоваться как для Microsoft Windows, так и для Linux и Apple OS X. Ключевой особенностью Ransom32 является модель распространения этого вымогателя для киберпреступников. Она представляет из себя модель Software as a service (SaaS), при этом для получения доступа к административной панели управления вредоносной программой и ее генерации, им нужно всего лишь указать адрес своего кошелька Bitcoin.

3c434b5cd0e4440a8632178efe7cfb79.png
Рис. Панель управления вымогателем Ransom32. Видно, что там указан адрес электронного кошелька оператора (владельца), статистика зараженных компьютеров, сумма уже полученных от пользователей средств, и настраиваемые параметры вредоносной программы. (Данные Emsisoft).

После нажатия на кнопку «Download client.scr», для оператора будет сгенерирован архив с файлами вредоносной программы с указанными им в панели управления параметрами. Этот архив имеет существенный размер, который составляет более 22MB. Размер явно превышает тот, который обычно используется для файлов других вредоносных программ и, как правило, не превышает 1MB.

8da40ce231aa4f4ba827061d8cebeb72.png
Рис. Файлы вымогателя внутри самораспаковывающегося SFX-архива.

Вредоносная программа использует скриптовый язык WinRAR для автоматической распаковки содержимого архива в директорию с временными файлами пользователя, затем на исполнение запускается файл chrome.exe. Предназначение файлов из архива следующее.

  • «chrome» содержит копию лицензионного соглашения GPL.
  • «chrome.exe» представляет из себя приложение NW.js и содержит код вредоносной программы, а также среду (framework), необходимую для его успешной работы.
  • «ffmpegsumo.dll», «nw.pak», «icudtl.dat» и «locales» содержат данные, которые необходимы среде NW.js для работы.
  • «rundll32.exe» представляет из себя переименованную копию файла клиента Tor.
  • «s.exe» представляет из себя переименованную копию файла инструмента Optimum X Shortcut, который используется для создания и управления ярлыками на рабочем столе и меню пуск.
  • «g» представляет из себя конфигурационный файл вредоносной программы, данные для которого были указаны в панели управления.
  • «msgbox.vbs» представляет из себя небольшой скрипт, который отображает настраиваемый текст всплывающего окна (popup).
  • «u.vbs» представляет из себя небольшой скрипт, который получает список всех файлов в указанной директории и удаляет их.


a7b2a0fa6c7743e9a28d06f8004046fd.png
Рис. Конфигурационный файл вредоносной программы в формате JSON.

Файлы NW.js представляет из себя специальную среду, которая позволяет разрабатывать приложения на JavaScript для Windows, Linux, OS X. Среда основана на популярных платформах Node.js и Chromium. Используя ее, разработчик может интегрировать свой скрипт в приложение для любой из этих платформ. Таким образом, злоумышленники могут просто адаптировать вымогатель для платформ Linux и OS X.

После исполнения файла вымогателя в системе, он извлечет из себя все вышеперечисленные файлы в директорию с временными файлами. Далее он копирует себя в директорию %AppData%\Chrome Browser. Файл s.exe используется для создания ярлыка в директории автозапуска пользователя с названием «ChromeService». Далее вредоносная программа запускает на исполнение файл клиента Tor для установления подключения со своим C&C-сервером на 85-й порт. После подключения к серверу, вымогатель отображает пользователю сообщение с требованием выкупа.

994910434c1947648e62807b87a16692.png
Рис. Сообщение с требованием выкупа.

После этого Ransom32 запускает процедуру шифрования файлов для следующих расширений.

*.jpg, *.jpeg, *.raw, *.tif, *.gif, *.png, *.bmp, *.3dm, *.max, *.accdb, *.db, *.dbf, *.mdb, *.pdb, *.sql, *.*sav*, *.*spv*, *.*grle*, *.*mlx*, *.*sv5*, *.*game*, *.*slot*, *.dwg, *.dxf, *.c, *.cpp, *.cs, *.h, *.php, *.asp, *.rb, *.java, *.jar, *.class, *.aaf, *.aep, *.aepx, *.plb, *.prel, *.prproj, *.aet, *.ppj, *.psd, *.indd, *.indl, *.indt, *.indb, *.inx, *.idml, *.pmd, *.xqx, *.xqx, *.ai, *.eps, *.ps, *.svg, *.swf, *.fla, *.as3, *.as, *.txt, *.doc, *.dot, *.docx, *.docm, *.dotx, *.dotm, *.docb, *.rtf, *.wpd, *.wps, *.msg, *.pdf, *.xls, *.xlt, *.xlm, *.xlsx, *.xlsm, *.xltx, *.xltm, *.xlsb, *.xla, *.xlam, *.xll, *.xlw, *.ppt, *.pot, *.pps, *.pptx, *.pptm, *.potx, *.potm, *.ppam, *.ppsx, *.ppsm, *.sldx, *.sldm, *.wav, *.mp3, *.aif, *.iff, *.m3u, *.m4u, *.mid, *.mpa, *.wma, *.ra, *.avi, *.mov, *.mp4, *.3gp, *.mpeg, *.3g2, *.asf, *.asx, *.flv, *.mpg, *.wmv, *.vob, *.m3u8, *.csv, *.efx, *.sdf, *.vcf, *.xml, *.ses, *.dat

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

  • :\windows\
  • :\winnt\
  • programdata\
  • boot\
  • temp\
  • tmp\
  • $recycle.bin\


Шифрование файлов осуществляется с помощью симметричного алгоритма AES и 128-битного ключа в блочном режиме CTR. Новый ключ шифрования генерируется для каждого файла. Ключ шифруется с использованием алгоритма RSA и публичного ключа, который загружается с управляющего сервера в процессе первого подключения.

849e1fec916047878dce04a3faccc8bc.png
Рис. Фрагмент сетевого взаимодействия между вредоносной программой и C&C-сервером, когда последний посылает публичный ключ RSA (длина ключа помечена желтым, ключ зеленым) в ответ на отправку адреса кошелька биткоин (фиолетовый).

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

Для защиты своих данных от подобного рода вредоносного ПО мы рекомендуем регулярно обновлять операционную систему, своевременно выполнять резервное копирование данных и использовать антивирусное ПО.

© Habrahabr.ru