Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

В сети появился новый шифровальщик Nemty, который предположительно является преемником GrandCrab или Buran. Вредоносное ПО главным образом распространяется с поддельного сайта PayPal и обладает рядом интересных особенностей. Подробности о работе этого ransomware – под катом.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

Новый шифровальщик Nemty обнаружил пользователь nao_sec 7 сентября 2019 года. Вредоносное ПО распространялось через сайт, замаскированный под PayPal, также имеется возможность проникновения ransomware на компьютер через эксплойт-кит RIG. Злоумышленники выбрали методы социальной инженерии, чтобы заставить пользователя запустить файл cashback.exe, который он якобы получает с сайта PayPal, Любопытно также, что в Nemty указан неверный порт для локального прокси-сервиса Tor, что не дает вредоносному ПО отправлять данные на сервер. Поэтому пользователю придется самому закачивать зашифрованные файлы в сеть Tor, если он намерен заплатить выкуп и ждать от злоумышленников расшифровки.

Несколько любопытных фактов о Nemty подсказывают, что его разрабатывали те же люди или связанные с Buran и GrandCrab кибер-преступники.

  • Как и в GandCrab, в Nemty есть пасхалка — ссылка на фото президента РФ Владимира Путина с матерной шуткой. В устаревшем шифровальщике GandCrab было изображение с тем же текстом.
  • Языковые артефакты обеих программ указывают на тех же русскоязычных авторов.
  • Это первый шифровальщик, использующий 8092-битный ключ RSA. Хотя смысла в этом нет: 1024-битного ключа для защиты от взлома вполне достаточно.
  • Как и Buran, шифровальщик написан на Object Pascal и скомпилирован на Borland Delphi.

Статический анализ

Выполнение вредоносного кода происходит в четыре этапа. Первый шаг — запуск cashback.exe, PE32-исполняемого файла под MS Windows размером 1198936 байт. Его код написан на Visual C++ и скомпилирован 14 октября 2013 года. В нем находится архив, который автоматически распаковывается при запуске cashback.exe. ПО использует библиотеку Cabinet.dll и ее функции FDICreate(), FDIDestroy() и прочие для получения файлов из архива .cab.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
SHA-256: A127323192ABED93AED53648D03CA84DE3B5B006B641033EB46A520B7A3C16FC

После распаковки архива появятся три файла.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Далее запускается temp.exe, PE32-исполняемый файл под MS Windows размером 307200 байт. Код написан на Visual C++ и упакован MPRESS packer, упаковщиком, аналогичным UPX.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
SHA-256: EBDBA4B1D1DE65A1C6B14012B674E7FA7F8C5F5A8A5A2A9C3C338F02DD726AAD

Следующий шаг — ironman.exe. После запуска temp.exe расшифровывает внедренные данные в temp и переименовывает их в ironman.exe, PE32-исполняемый файл размером 544768 байт. Код скомпилирован в Borland Delphi.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
SHA-256: 2C41B93ADD9AC5080A12BF93966470F8AB3BDE003001492A10F63758867F2A88

Последний шаг – перезапуск файла ironman.exe. Во время выполнения он преобразует свой код и запускает себя из памяти. Эта версия ironman.exe является вредоносной и отвечает за шифрование.

Вектор атаки

На данный момент шифровальщик Nemty распространяется через сайт pp-back.info.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

Полную цепочку заражения можно посмотреть на app.any.run sandbox.

Установка

Cashback.exe — начало атаки. Как уже говорилось, cashback.exe распаковывает содержащийся в нем .cab файл. Затем он создает папку TMP4351$.TMP вида вида %TEMP%IXxxx.TMP, где xxx — число от 001 до 999.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Далее устанавливается ключ реестра, который выглядит вот так:

[HKLMSOFTWAREWOW6432NodeMicrosoftWindowsCurrentVersionRunOncewextract_cleanup0]
“rundll32.exe” “C:Windowssystem32advpack.dll,DelNodeRunDLL32 «C:UsersMALWAR~1AppDataLocalTempIXPxxx.TMP»”

Он используется для удаления распакованных файлов. Наконец, cashback.exe запускает процесс temp.exe.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Temp.exe — второй этап в цепочке заражения

Это процесс, запущенный файлом cashback.exe, второй шаг исполнения вируса. Он пытается скачать AutoHotKey — инструмент для запуска скриптов под Windows — и запустить скрипт WindowSpy.ahk, расположенный в разделе ресурсов PE-файла.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Скрипт WindowSpy.ahk расшифровывает файл temp в ironman.exe, используя алгоритм RC4 и пароль IwantAcake. Ключ из пароля получается при помощи алгоритма хеширования MD5.

Затем temp.exe вызывает процесс ironman.exe.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Ironman.exe — третий шаг

Ironman.exe считывает содержимое файла iron.bmp и создает файл iron.txt с криптолокером, который запустится следующим.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
После этого вирус загружает iron.txt в память и перезапускает его как ironman.exe. После этого iron.txt удаляется.

ironman.exe — основная часть вымогателя NEMTY, которая и шифрует файлы на пораженном компьютере. Вредоносное ПО создает мьютекс под названием hate.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Первым делом он определяет географическое местоположение компьютера. Nemty открывает браузер и узнает IP на http://api.ipify.org. На сайте api.db-ip.com/v2/free[IP]/countryName по полученному IP определяется страна, и, если компьютер находится в одном из перечисленных ниже регионов, то выполнение кода вредоносного ПО прекращается:

  • Россия
  • Белоруссия
  • Украина
  • Казахстан
  • Таджикистан

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

Если IP-адрес жертвы не относится к списку выше, то вирус шифрует информацию пользователя.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

Для предотвращения восстановления файлов удаляются их теневые копии:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Затем создается список файлов и папок, которые не будут шифроваться, а также список расширений файлов.

  • windows
  • $RECYCLE.BIN
  • rsa
  • NTDETECT.COM
  • ntldr
  • MSDOS.SYS
  • IO.SYS
  • boot.ini AUTOEXEC.BAT ntuser.dat
  • desktop.ini
  • CONFIG.SYS
  • BOOTSECT.BAK
  • bootmgr
  • programdata
  • appdata
  • osoft
  • Common Files

log LOG CAB cab CMD cmd COM com cpl
CPL exe EXE ini INI dll DDL lnk LNK url
URL ttf TTF DECRYPT.txt NEMTY 

Обфускация

Чтобы скрыть URL-адреса и внедренные конфигурационные данные, Nemty использует алгоритм кодирования base64 и RC4 с ключевой фразой fuckav.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Процесс дешифровки с использованием CryptStringToBinary выглядит следующим образом

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

Шифрование

Nemty использует трехслойное шифрование:

  • AES-128-CBC для файлов. 128-битный AES-ключ генерируется случайным образом и используется один и тот же для всех файлов. Он хранится в конфигурационном файле на компьютере пользователя. IV генерируется случайным образом для каждого файла и хранится в зашифрованном файле.
  • RSA-2048 для шифрования файлов IV. Генерируется ключевая пара для сессии. Закрытый ключ к сессии хранится в конфигурационном файле на компьютере пользователя.
  • RSA-8192. Основной открытый ключ встроен в программу и используется для шифрования конфигурационного файла, в котором хранится ключ AES и секретный ключ для сессии RSA-2048.
  • Сначала Nemty генерирует 32 байта случайных данных. Первые 16 байт используются в качестве ключа AES-128-CBC.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Второй алгоритм шифрования — это RSA-2048. Ключевая пара генерируется функцией CryptGenKey() и импортируется функцией CryptImportKey().

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
После того, как ключевая пара для сессии сгенерирована, открытый ключ импортируется в MS Cryptographic Service Provider.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Пример сгенерированного открытого ключа для сессии:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Далее закрытый ключ импортируется в CSP.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Пример сгенерированного закрытого ключа для сессии:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
И последним идет RSA-8192. Основной открытый ключ хранится в зашифрованном виде (Base64 + RC4) в разделе .data PE-файла.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Ключ RSA-8192 после декодирования base64 и дешифрования RC4 с паролем fuckav выглядит вот так.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
В результате весь процесс шифрования выглядит следующим образом:

  • Генерация 128-битного AES-ключа, который будет использоваться для шифрования всех файлов.
  • Создание IV для каждого файла.
  • Создание ключевой пары для сессии RSA-2048.
  • Расшифровка имеющегося ключа RSA-8192 при помощи base64 и RC4.
  • Шифрование содержимого файлов с помощью алгоритма AES-128-CBC из первого шага.
  • Шифрование IV с помощью открытого ключа RSA-2048 и кодирование в base64.
  • Добавление шифрованного IV в конец каждого зашифрованного файла.
  • Добавление ключа AES и закрытого ключа сессии RSA-2048 в конфиг.
  • Данные конфигурации, описанные в разделе Сбор информации о зараженном компьютере, шифруются при помощи основного открытого ключа RSA-8192.
  • Зашифрованный файл выглядит следующим образом:

Пример зашифрованных файлов:

Сбор информации о зараженном компьютере

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

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Он вызывает функции GetLogicalDrives(), GetFreeSpace(), GetDriveType(), чтобы собрать информацию о дисках зараженного компьютера.

Собранная информация хранится в конфигурационном файле. Декодировав строку, мы получаем список параметров в конфигурационном файле:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Пример конфигурации зараженного компьютера:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Шаблон конфигурации можно представить следующим образом:

{«General»: {«IP»:»[IP]»,«Country»:»[Country]»,«ComputerName»:»[ComputerName]»,«Username»:»[Username]»,«OS»:»[OS]»,«isRU»:false,«version»:«1.4»,«CompID»:»{[CompID]}»,«FileID»:»_NEMTY_[FileID]_»,«UserID»:»[UserID]»,«key»:»[key]»,«pr_key»:»[pr_key]

Собранные данные Nemty хранит в формате JSON в файле %USER%/_NEMTY_.nemty. FileID длиной 7 символов генерируется случайным образом. Например: _NEMTY_tgdLYrd_.nemty. FileID также добавляется в конец зашифрованного файла.

Сообщение о выкупе

После шифрования файлов на рабочем столе появляется файл _NEMTY_[FileID]-DECRYPT.txt следующего содержания:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
В конце файла находится зашифрованная информация о зараженном компьютере.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

Сетевая коммуникация

Процесс ironman.exe скачивает дистрибутив браузера Tor с адреса https://dist.torproject.org/torbrowser/8.5.4/tor-win32-0.4.0.5.zip и пытается установить его.

Затем Nemty пытается отправить конфигурационные данные на адрес 127.0.0.1:9050, где ожидает найти работающий прокси-сервер браузера Tor. Однако по умолчанию прокси-сервер Tor прослушивает порт 9150, а порт 9050 использует демон Tor в Linux или Expert Bundle на Windows. Таким образом, данные на сервер злоумышленника не отправляются. Вместо этого пользователь может загрузить конфигурационный файл вручную, посетив службу расшифровки Tor по ссылке, указанной сообщении о выкупе.

Подключение к прокси Tor:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

HTTP GET создает запрос на 127.0.0.1:9050/public/gate?data=

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Здесь вы видите открытые TCP-порты, которые используются прокси TORlocal:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Сервис дешифрации Nemty в сети Tor:

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
Можно загрузить шифрованное фото (jpg, png, bmp) для тестирования сервиса дешифрации.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal
После этого злоумышленник просит заплатить выкуп. В случае неуплаты цена удваивается.

Знакомьтесь: ransomware Nemty c поддельного сайта PayPal

Заключение

На данный момент расшифровать файлы, зашифрованные Nemty, без уплаты выкупа не получится. У этой версии ransomware есть общие черты с шифровальщиками Buran и устаревшим GandCrab: компиляция на Borland Delphi и изображения с одинаковым текстом. Кроме того, это первый шифровальщик, который использует 8092-битный ключ RSA, что, повторимся, не имеет никакого смысла, так как 1024-битного ключа для защиты вполне достаточно. Наконец, что любопытно, он пытается использовать неверный порт для локального прокси-сервиса Tor.

Тем не менее, решения Acronis Backup и Acronis True Image не допускают шифровальщик Nemty до пользовательских ПК и данных, а провайдеры могут защитить своих клиентов при помощи Acronis Backup Cloud. Полная Киберзащита обеспечивает не только резервное копирование, но также защиту с использованием Acronis Active Protection, специальной технологии на базе искусственного интеллекта и поведенческой эвристики, которая позволяет нейтрализовать даже еще неизвестное вредоносное ПО.

Источник: habr.com