Шифровальщик с ироничным названием Data Keeper является типичным зловредом, распространяемым по модели Ransomware-as-a-Service (RaaS). Это означает, что использовать его может буквально любой желающий злоумышленник – достаточно зайти на сайт в сети Tor и создать персональный исполняемый файл троянца с нужными настройками. Главное, не забывать, что создатели «генератора» не занимаются благотворительностью, т.
Технические детали
Вот перечень настроек, доступных желающему создать свой Data Keeper:
- Запуск дополнительного файла (
Страница, позволяющая сгенерировать исполняемый файл троянца
Процесс запуска DataKeeper состоит из нескольких стадий. Код каждой написан на .NET и защищен с помощью ConfuserEx. Кроме того, строки дополнительно зашифрованы XOR с 32-байтовым ключом и закодированы Base64. Ресурсы упакованы с помощью алгоритма Deflate, также зашифрованы XOR и закодированы Base64.
Последовательность исполнения выглядит следующим образом:
- Стартует изначальный исполняемый файл. Он распаковывает из собственных ресурсов исполняемый файл второй стадии, сохраняете его в директории %LocalAppData% с псевдослучайным именем и расширением .bin, а затем запускает.
- Файл второй стадии (тот самый .bin) распаковывает библиотеку DLL третьей стадии, загружает ее в память и передает ей управление (на диске библиотека не сохраняется).
- Получив управление, библиотека третьей стадии с помощью WMI проверяет, установлен ли в системе какой-нибудь антивирусный продукт. Если нет, то немедленно приступает к работе. Если да, то выжидает случайный промежуток времени от 30 до 60 секунд, и только затем распаковывает из своих ресурсов DLL четвертой стадии, загружает ее в память и передает ей управление (на диске библиотека также не сохраняется). Кроме того, в коде этой стадии содержится функция определения запуска на виртуальных машинах (VmWare и VirtualBox), однако, в исследованном нами образце этот код не вызывается.
- DLL четвертой стадии представляет собой основную полезную нагрузку шифровальщика.
Часть кода DLL четвертой стадии после распаковки ConfuserEx. Строки остаются зашифрованными, названия методов заменены случайными словами
Шифрование файлов
Авторы троянца решили использовать стандартную схему шифрования AES+RSA. В ресурсах DLL четвертой стадии содержится список расширений файлов, подлежащих шифрованию, публичный мастер-ключ RSA, текст требований, ID образца трояна и другая вспомогательная информация.
В процессе исполнения зловред генерирует ID заражения, случайный ключ, вектор инициализации (IV) и шифрует файлы с подходящими расширениями алгоритмом AES в режиме CBC. В конец каждого файла помещается ID заражения.
ID заражения в конце зашифрованного файла
Ключ и вектор инициализации не меняются от файла к файлу. Для обеспечения возможности расшифровки Data Keeper шифрует эти ключевые данные алгоритмом RSA и сохраняет результат в файле с требованиями, который имеет имя !!! ##### === ReadMe === ##### !!!.htm
Схема организована таким образом, что DataKeeper не требует соединения с интернетом при шифровании. Для расшифровки жертве придется самостоятельно зайти на страницу оплаты, ссылка на которую есть в файле с требованиями.
Содержимое файла с требованиями DataKeeper
Распространение по сети
Как упоминалось выше, DataKeeper может распространяться по локальной сети, используя утилиту PsExec. Интересно отметить, что соответствующий исполняемый код всегда присутствует в теле троянца, однако в зависимости от того, была ли при генерации шифровальщика выбрана возможность самораспространения, в ресурсах может отсутствовать исполняемый файл PsExec.
Таким образом, если при генерации образца DataKeeper возможность самораспространения включена, то в ресурсах PsExec присутствует, в противном случае ресурс с именем PsExec остается пустым и самораспространение не функционирует.
Код процедуры самораспространения с помощью PsExec
Способ распространения Data Keeper остается на усмотрение участника RaaS-программы, троянец может как использоваться для таргетированных атак, так и стать частью вредоносной спам-рассылки. Однако мы пока не наблюдаем сколько-нибудь массовые атаки с использованием «сгенерированных» троянцев.
Продукты «Лаборатории Касперского» детектируют образцы Data Keeper как HEUR:Trojan-Ransom.Win32.Generic и PDM:Trojan.Win32.Generic.
MD5: 75dd2cdf1a2d2cafcd90f34214f5f037