[Перевод] Выкупать — так королеву: Varonis расследует быстро распространяющийся шифровальщик-вымогатель “SaveTheQueen”

elrjju9x0zwjqu_8jtoeo4kkoem.png

Новая разновидность вредоносного ПО класса вирусов-вымогателей зашифровывает файлы и добавляет к ним расширение ».SaveTheQueen», распространяясь через системную сетевую папку SYSVOL на контроллерах доменов Active Directory.

Наши заказчики столкнулись с этим вредоносом недавно. Приводим наш полный анализ, его результаты и выводы ниже.

Обнаружение


Один из наших заказчиков связался с нами после того, как они столкнулись с новым видом шифровальщика-вымогателя, который добавлял расширение ».SaveTheQueen» к новым зашифрованным файлам в их среде.

Во время нашего расследования, а точнее на этапе поиска источников заражения, мы выяснили, что распространение и отслеживание заражённых жертв производилось с помощью использования сетевой папки SYSVOL на контроллере домена заказчика.

SYSVOL — это ключевая папка для каждого контроллера домена, используемая для доставки объектов групповых политик (GPO) и скриптов входа и выхода из системы на компьютеры домена. Содержимое данной папки реплицируется между контроллерами домена для синхронизации этих данных на сайтах организации. Запись в SYSVOL требует высоких доменных привилегий, однако, после компрометации, этот актив становится мощным инструментом для атакующих, которые могут использовать его для быстрого и эффективного распостранения вредоносной нагрузки по домену.

Цепочка аудита Varonis помогла быстро выявить следующее:

  • Инфицированная учетная запись пользователя создавала файл с именем «hourly» в SYSVOL
  • Много файлов журналов создавались в SYSVOL — каждый назван именем доменного устройства
  • Много разных IP-адресов получали доступ к файлу «hourly»


Мы заключили, что файлы журналов использовались для отслеживания процесса заражения на новых устройствах, и что «hourly» — это запускаемое по расписанию задание, которое выполняло вредоносную нагрузку на новых устройствах, используя скрипт Powershell — образцы «v3» и «v4».

Вероятно, атакующий получил и использовал привилегии администратора домена для записи файлов в SYSVOL. На инфицированных узлах атакующий запускал код PowerShell, который создавал задание расписания для того, что открыть, расшифровать и запустить вредоносное ПО.

Расшифровка вредоноса


Мы безрезультатно опробовали несколько способов расшифровки образцов:

qjmtjzhy4lefpwie9ik6_uialqy.png

Мы уже почти готовы были сдаться, когда решили попробовать способ «Magic» великолепной
утилиты Cyberchef авторства GCHQ. «Magic» пытается угадать шифрование файла, используя перебор паролей для разных типов шифрования и измеряя энтропию.


wvihkp4ra_yhagocyuvcto9hk14.png

«Magic» определил, что был использован упаковщик GZip с кодировкой base64, благодаря чему мы смогли распаковать файл и обнаружить код для внедрения — «инжектор».

f9z3xydbmb-tbdoeui5-9zhsnai.png

Дроппер: «В районе эпидемия! Поголовные прививки. Ящур»


Дроппер представлял собой обычный файл .NET без какой-либо защиты. После чтения исходного кода с помощью DNSpy мы поняли, что его единственной целью было внедрение шелл-кода в процесс winlogon.exe.

7e2pmvyemixm7gwgf38kgqg5gtu.png

eol_s38i7jfqzjlley-0v3xlsto.png

Шелл-код или простые сложности


Мы использовали инструмент авторства Hexacorn — shellcode2exe для того, чтобы «скомпилировать» шелл-код в исполняемый файл для отладки и анализа. Затем мы обнаружили, что она работал как на 32-, так и на 64-битных машинах.

ggupwetsxenylw_gov8ruzrapru.png

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

Когда же мы разобрали скомпилированный шелл-код с помощью x64dbg, мы заметили, что он подгружал динамические библиотеки .NET , такие как clr.dll и mscoreei.dll. Это показалось нам странным — обычно злоумышленники стараются сделать шелл-код настолько маленьким, насколько это вообще возможно, вызывая нативные функции ОС вместо их загрузки. Зачем кому-либо нужно встраивать в шелл-код функционал Windows, вместо прямого вызова по запросу?

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

Мы нашли инструмент Donut, который, как нам показалось, мог скомпилировать похожий шелл-код. Вот его описание с GitHub:

Donut генерирует шелл-код x86 или x64 из VBScript, JScript, EXE, DLL (включая сборки .NET). Этот-шелл-код может быть внедрён в любой процесс Windows для выполнения в
оперативной памяти.

Для подтверждения нашей теории мы скомпилировали наш собственный код, используя Donut, и сравнили его с образцом — и… да, мы обнаружили ещё один компонент использованного инструментария. После этого, мы уже смогли извлечь и проанализировать оригинальный исполняемый файл на .NET.

Защита кода


Этот файл был обфусцирован с помощью ConfuserEx:

ah76b96lg2aq_r50dkcp23_m_q0.png

lsgbhj0ogzjphutdng6aqodmb6i.png

ConfuserEx — это .NET проект с открытым кодом для защиты кода других разработок. ПО этого класса позволяет разработчикам защищать свой код от реверс-инжиниринга с помощью таких способов, как: замена символов, маскировка потока команд управления и скрытие ссылочного метода. Авторы вредоносного ПО используют обфускаторы с целью избежания обнаружения и чтобы сделать более трудной задачу реверс-инжиниринга.

Благодаря ElektroKill Unpacker мы распаковали код:

or0fii9mxxkic3nv0-khahgb1nc.png

Итог — полезная нагрузка


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

Главная функция выбирает в качестве параметров следующие строки:

  • Расширение файла для использования после шифрования (SaveTheQueen)
  • Email автора, чтобы поместить в файл-записку с требованием выкупа
  • Открытый ключ, используемый для шифрования файлов


7_djopyggy3b51wnhrxj6iheu3k.png

Сам процесс выклядит следующим образом:

  1. Вредонос изучает локальные и подключенные диски на устройстве жертвы

    wlmffk3ai7tekxndrdys5k3yghc.png

  2. Ищет файлы для шифрования

    7p8nxz-2jhgmoa9ta3rvft28xfm.png

  3. Пытается завершить процесс, использующий файл, который он собирается зашифровать
  4. Переименовывает файл в «Исходное_имя_файла.SaveTheQueenING», используя функцию MoveFile, и зашифровывает его
  5. После того, как файл зашифрован открытым ключом автора, вредонос снова переименовывает его, теперь в » Исходное_имя_файла.SaveTheQueen»
  6. Происходит запись файла с требованием выкупа в ту же папку

    orbg1vgu3ierx5tsqn1rgchzifq.png


Основываясь на использовании нативной функции «CreateDecryptor», одна из функций вредоноса, похоже, содержит в качестве параметра механизм расшифровки, требующий закрытого ключа.

Вирус-шифровальщик НЕ шифрует файлы, хранящиеся в директориях:

C:\windows
C:\Program Files
C:\Program Files (x86)
C:\Users\\AppData
C:\inetpub

Также он НЕ шифрует следующие типы файлов: EXE, DLL, MSI, ISO, SYS, CAB.

Итоги и выводы


Несмотря на то, что сам вирус-вымогатель не содержал никаких необычных функций, атакующий креативно использовал Active Directory для распостранения дроппера, а само вредоносное ПО предоставило нам интересные, пусть в итоге и не сложные, препятствия во время анализа.

Мы думаем, что автор вредоноса:

  1. Написал вирус-вымогатель со встроенным внедрением в процесс winlogon.exe, а также
    функциональностью шифрования и расшифровки файлов
  2. Замаскировал вредоносный код с помощью ConfuserEx, преобразовал результат с помощью Donut и дополнительно скрыл дроппер base64 Gzip
  3. Получил повышенные привилегии в домене жертвы и использовал их для копирования
    зашифрованного вредоноса и заданий по расписанию в сетевую папку SYSVOL контроллеров домена
  4. Запустил скрипт PowerShell на устройствах домена для распространения вредоноса и записи прогресса атаки в журналы в SYSVOL


tdwolzyjqc7k6eafguk3anox89q.png

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

Habrahabr.ru прочитано 16246 раз