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

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!



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

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

Обнаружение


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

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

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

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

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

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

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

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


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



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

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



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



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


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





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


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



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

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

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

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

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


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

Защита кода


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





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

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



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


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

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

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



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

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


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


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



Основываясь на использовании нативной функции «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



Если у Вас есть вопросы об этом варианте вируса-вымогальщика, или любой другой проделанной нашими командами форензики и расследования ИБ-инцидентов, свяжитесь с нами или запросите живую демонстрацию реагирования на атаки, где мы всегда отвечаем на вопросы в рамках сессии вопросов и ответов.
Источник: https://habr.com/ru/company/varonis/blog/488896/


Интересные статьи

Интересные статьи

источник изображения Программирование сегодня используется во многих областях науки, где отдельным ученым часто приходится собственноручно писать код для своих проектов. Для большинств...
Каждый лишний элемент на сайте — это кнопка «Не купить», каждая непонятность или трудность, с которой сталкивается клиент — это крестик, закрывающий в браузере вкладку с вашим интернет-магазином.
Среди главных вопросов, на которые надо ответить руководству компании перед решением взяться за проект, выделяются эти: Будет ли выгодно выполнить обсуждаемый проект за предлагаемую цену? К...
Наверняка многие слышали понятие MVP (Минимально жизнеспособный продукт вики). На хабре тоже много статей про MVP, но в основном это или просто описание что такое MVP и для чего оно, или различны...
В Челябинске проходят митапы системных администраторов Sysadminka, и на последнем из них я делал доклад о нашем решении для работы приложений на 1С-Битрикс в Kubernetes. Битрикс, Kubernetes, Сep...