- PVSM.RU - https://www.pvsm.ru -
Новая разновидность вредоносного ПО класса вирусов-вымогателей зашифровывает файлы и добавляет к ним расширение ".SaveTheQueen", распространяясь через системную сетевую папку SYSVOL на контроллерах доменов Active Directory.
Наши заказчики столкнулись с этим вредоносом недавно. Приводим наш полный анализ, его результаты и выводы ниже.
Один из наших заказчиков связался с нами после того, как они столкнулись с новым видом шифровальщика-вымогателя, который добавлял расширение ".SaveTheQueen" к новым зашифрованным файлам в их среде.
Во время нашего расследования, а точнее на этапе поиска источников заражения, мы выяснили, что распространение и отслеживание заражённых жертв производилось с помощью использования сетевой папки SYSVOL на контроллере домена заказчика.
SYSVOL – это ключевая папка для каждого контроллера домена, используемая для доставки объектов групповых политик (GPO) и скриптов входа и выхода из системы на компьютеры домена. Содержимое данной папки реплицируется между контроллерами домена для синхронизации этих данных на сайтах организации. Запись в SYSVOL требует высоких доменных привилегий, однако, после компрометации, этот актив становится мощным инструментом для атакующих, которые могут использовать его для быстрого и эффективного распостранения вредоносной нагрузки по домену.
Цепочка аудита Varonis помогла быстро выявить следующее:
Мы заключили, что файлы журналов использовались для отслеживания процесса заражения на новых устройствах, и что «hourly» – это запускаемое по расписанию задание, которое выполняло вредоносную нагрузку на новых устройствах, используя скрипт Powershell – образцы «v3» и «v4».
Вероятно, атакующий получил и использовал привилегии администратора домена для записи файлов в SYSVOL. На инфицированных узлах атакующий запускал код PowerShell, который создавал задание расписания для того, что открыть, расшифровать и запустить вредоносное ПО.
Мы безрезультатно опробовали несколько способов расшифровки образцов:
Мы уже почти готовы были сдаться, когда решили попробовать способ «Magic» великолепной
утилиты Cyberchef [1] авторства GCHQ. «Magic» пытается угадать шифрование файла, используя перебор паролей для разных типов шифрования и измеряя энтропию.
«Magic» определил, что был использован упаковщик GZip с кодировкой base64, благодаря чему мы смогли распаковать файл и обнаружить код для внедрения – «инжектор».
Дроппер представлял собой обычный файл .NET без какой-либо защиты. После чтения исходного кода с помощью DNSpy [4] мы поняли, что его единственной целью было внедрение шелл-кода в процесс winlogon.exe.
Мы использовали инструмент авторства Hexacorn — shellcode2exe [5] для того, чтобы «скомпилировать» шелл-код в исполняемый файл для отладки и анализа. Затем мы обнаружили, что она работал как на 32-, так и на 64-битных машинах.
Написание даже простого шелл-кода в нативной трансляции с ассемблера может быть сложным, написание же полного шелл-кода, работающего на обоих видах систем, требует элитных навыков, поэтому мы начили поражаться изощрённости атакующего.
Когда же мы разобрали скомпилированный шелл-код с помощью x64dbg [6], мы заметили, что он подгружал динамические библиотеки .NET , такие как clr.dll и mscoreei.dll. Это показалось нам странным – обычно злоумышленники стараются сделать шелл-код настолько маленьким, насколько это вообще возможно, вызывая нативные функции ОС вместо их загрузки. Зачем кому-либо нужно встраивать в шелл-код функционал Windows, вместо прямого вызова по запросу?
Как выяснилось, автор вредоноса вообще не писал этот сложный шелл-код – было использовано харатектерное для данной задачи ПО с целью перевода исполняемых файлов и скриптов в шелл-код.
Мы нашли инструмент Donut [7], который, как нам показалось, мог скомпилировать похожий шелл-код. Вот его описание с GitHub:
Donut генерирует шелл-код x86 или x64 из VBScript, JScript, EXE, DLL (включая сборки .NET). Этот-шелл-код может быть внедрён в любой процесс Windows для выполнения в
оперативной памяти.
Для подтверждения нашей теории мы скомпилировали наш собственный код, используя Donut, и сравнили его с образцом – и… да, мы обнаружили ещё один компонент использованного инструментария. После этого, мы уже смогли извлечь и проанализировать оригинальный исполняемый файл на .NET.
Этот файл был обфусцирован с помощью ConfuserEx [8]:
ConfuserEx — это .NET проект с открытым кодом для защиты кода других разработок. ПО этого класса позволяет разработчикам защищать свой код от реверс-инжиниринга с помощью таких способов, как: замена символов, маскировка потока команд управления и скрытие ссылочного метода. Авторы вредоносного ПО используют обфускаторы с целью избежания обнаружения и чтобы сделать более трудной задачу реверс-инжиниринга.
Благодаря ElektroKill Unpacker [9] мы распаковали код:
Полученная в результате преобразований полезная нагрузка – это очень простой вирус-вымогатель. Никакого механизма обеспечения присутствия в системе, никаких соединений с командным центром – только старое доброе ассиметричное шифрование, для того, чтобы сделать данные жертвы нечитаемыми.
Главная функция выбирает в качестве параметров следующие строки:
Сам процесс выклядит следующим образом:
Основываясь на использовании нативной функции «CreateDecryptor», одна из функций вредоноса, похоже, содержит в качестве параметра механизм расшифровки, требующий закрытого ключа.
Вирус-шифровальщик НЕ шифрует файлы, хранящиеся в директориях:
C:windows
C:Program Files
C:Program Files (x86)
C:Users\AppData
C:inetpub
Также он НЕ шифрует следующие типы файлов:EXE, DLL, MSI, ISO, SYS, CAB.
Несмотря на то, что сам вирус-вымогатель не содержал никаких необычных функций, атакующий креативно использовал Active Directory для распостранения дроппера, а само вредоносное ПО предоставило нам интересные, пусть в итоге и не сложные, препятствия во время анализа.
Мы думаем, что автор вредоноса:
Если у Вас есть вопросы об этом варианте вируса-вымогальщика, или любой другой проделанной нашими командами форензики и расследования ИБ-инцидентов, свяжитесь с нами [10] или запросите живую демонстрацию реагирования на атаки [11], где мы всегда отвечаем на вопросы в рамках сессии вопросов и ответов.
Автор: Varonis
Источник [12]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/347086
Ссылки в тексте:
[1] Cyberchef: https://gchq.github.io/CyberChef/
[2] Дифференциальная энтропия: https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%84%D1%84%D0%B5%D1%80%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%8D%D0%BD%D1%82%D1%80%D0%BE%D0%BF%D0%B8%D1%8F
[3] Энтропия в теориии информации: https://ru.wikipedia.org/wiki/%D0%AD%D0%BD%D1%82%D1%80%D0%BE%D0%BF%D0%B8%D1%8F#%D0%92_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D0%B8_%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8
[4] DNSpy: https://github.com/0xd4d/dnSpy
[5] shellcode2exe: http://www.hexacorn.com/blog/2015/12/10/converting-shellcode-to-portable-executable-32-and-64-bit/
[6] x64dbg: https://x64dbg.com/
[7] Donut: https://github.com/TheWover/donut
[8] ConfuserEx: https://yck1509.github.io/ConfuserEx/
[9] ElektroKill Unpacker: https://drive.google.com/file/d/1cXHTHH1S90RCqWYnFOSp1rtYmURecQVm/view
[10] свяжитесь с нами : https://www.varonis.com/ru/company/contact-us/
[11] живую демонстрацию реагирования на атаки: https://www.varonis.com/ru/cyber-workshop/
[12] Источник: https://habr.com/ru/post/488896/?utm_campaign=488896&utm_source=habrahabr&utm_medium=rss
Нажмите здесь для печати.