Threat Actors Abuse MSBuild for Cobalt Strike Beacon Execution
Recently observed malicious campaigns have abused Microsoft Build Engine (MSBuild) to execute a Cobalt Strike payload on compromised machines.
Designed for the creation of applications on Windows, MSBuild uses a project file element called ‘Tasks’ to designate components that are executed during project building, and threat actors are abusing these Tasks to run malicious code disguised as MSBuild.
Over the past week, Morphus Labs security researcher and SANS Internet Storm Center (ISC) handler Renato Marinho says, two different malicious campaigns were observed abusing MSBuild for code execution.
The threat actors typically gain access to the target environment using a valid remote desktop protocol (RDP) account, leverage remote Windows Services (SCM) for lateral movement, and abuse MSBuild to execute the Cobalt Strike Beacon payload.
The malicious MSBuild project was designed to compile and execute specific C# code that in turn decodes and executes Cobalt Strike.
Marinho also says that, after he confirmed that Beacon was indeed used in the attack, he was also able to decrypt the communication with the command and control (C&C) server, which was SSL encrypted.
The researcher also notes that, to stay protected from such attacks, organizations should set the Windows Defender Application Control (WDAC) policy to block the Microsoft-signed applications that can allow for the execution of other code. MSBuild composes a list of such applications.
“There is a note for MSBuild.exe, though, that if the system is used in a development context to build managed applications, the recommendation is to allow MSBuild.exe in the code integrity policies,” Marinho concludes.