Содержание статьи
Ryuk — программа‑вымогатель, которая шифрует файлы и требует у жертвы выкуп в криптовалюте Bitcoin за предоставление ключей для дешифровки. Используется трой исключительно для целевых атак. Впервые этот вымогатель заприметили в августе 2018 года в рамках кампании, которая была нацелена на несколько предприятий. Наши эксперты провели анализ первоначальных версий вредоносного ПО и выявили сходства и общие фрагменты исходного кода с программой‑вымогателем Hermes. Hermes — вымогатель массового распространения, который продается на подпольных форумах и используется несколькими группами хакеров.
Для своей вредоносной деятельности Ryuk использует сочетание симметричного шифрования AES (256 бит) и асимметричного шифрования RSA (2048 или 4096 бит). Симметричный ключ применяется для шифрования содержания файлов, а асимметричный открытый ключ — для шифрования симметричного ключа. После оплаты выкупа злоумышленники предоставляют соответствующий асимметричный закрытый ключ, с помощью которого можно расшифровать файлы.
Поскольку Ryuk применяют для целевых атак, векторы первоначального заражения подбираются с учетом особенностей жертвы. Очень часто этими векторами становятся спирфишинговые электронные письма, удаленный доступ к системам с помощью похищенных учетных записей и применение известного массового вредоносного ПО. В последнем случае для заражения Ryuk часто используется сочетание Emotet и TrickBot; недавно также было зафиксировано применение BazarLoader.
info
Спирфишинг (spear phishing) — подвид фишинга, который нацелен на более узкий круг людей (компания, группа ее сотрудников или отдельный человек).
Цепочка заражения Ryuk часто начинается со спирфишингового электронного письма, которое содержит вредоносную ссылку или документ MS Office. С их помощью хакеры получают возможность проникнуть в информационную среду жертвы. В некоторых случаях такой отправной точкой доступа становятся компьютеры со скомпрометированным протоколом RDP.
В первом сценарии в качестве загрузчика вредоносного ПО используется TrickBot или BazarLoader. В результате их исполнения другие хакеры получат возможность приобрести доступ к взломанным машинам. После этого на компьютеры часто загружается «маячок» Cobalt Strike для похищения логинов и паролей пользователей и горизонтального перемещения по сети с захватом контроллеров домена. В итоге посредством этих контроллеров бинарный код Ryuk распространяется на все машины. Как же устроен этот код? Давай разбираться.
Общая информация
Анализируемый файл — образец нераспакованной программы‑вымогателя семейства Ryuk. Идентифицировать этот образец можно с помощью приведенных ниже контрольных сумм (хешей).
Hash type | Value |
---|---|
SHA-1 | 1EFC175983A17BD6C562FE7B054045D6DCB341E5 |
SHA-256 | 8F368B029A3A5517CB133529274834585D087A2D3A 5875D03EA38E5774019C8A |
Конечная полезная загрузка Ryuk имеет размер 148 Кбайт и дату компиляции 30 апреля 2021 года.
Антиотладка
Ryuk многократно применяет техники защиты от декомпиляции для затруднения статического анализа кода программы.
Кроме того, вредоносный код поддерживает антиотладочные техники с использованием API ZwQueryInformationProcess
и различных признаков (флагов), например ProcessDebugFlags
, ProcessDebugPort
и ProcessDebugObjectHandle
. С их помощью программа‑вымогатель может определить наличие отладчика и принудительно закроет его.
В дополнение к этому вымогатель проверяет наличие признака BeingDebugged
в PEB-структуре процесса с той же целью.
Исполнение
Ryuk трижды копирует себя в текущую папку с различными именами и запускает эти новые исполняемые файлы с разными параметрами командной строки. Каждое такое исполнение поддерживает отдельную функцию. Имя файла для первой копии вредоносного ПО генерируется как контрольная сумма текущего имени пользователя, к которой добавляется r.
.
Если малварь не может получить имя пользователя, используется имя по умолчанию — rep.
. При исполнении этого файла вредонос использует командную строку 9
. Этот процесс отвечает за саморепликацию Ryuk на других машинах сети.
Имя второй копии трояна генерируется случайным образом, к нему добавляется суффикс lan.
. Этой копии соответствует командная строка 8
. Данный процесс отвечает за отправку пакетов Wake On Lan на другие компьютеры в сети.
Имя третьей копии создается в точности так же, как для второй, используется та же командная строка.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»