This rule detects the presence of Cobalt Strike beacon processes, which adversaries frequently deploy to establish persistent command-and-control channels for lateral movement and data exfiltration. Proactive hunting is essential in Azure Sentinel because these beacons often mimic legitimate system behavior, allowing attackers to remain undetected during early stages of an intrusion despite their low initial severity rating.
rule APT_CobaltStrike_Beacon_Indicator {
meta:
description = "Detects CobaltStrike beacons"
author = "JPCERT"
reference = "https://github.com/JPCERTCC/aa-tools/blob/master/cobaltstrikescan.py"
date = "2018-11-09"
id = "8508c7a0-0131-59b1-b537-a6d1c6cb2b35"
strings:
$v1 = { 73 70 72 6E 67 00 }
$v2 = { 69 69 69 69 69 69 69 69 }
condition:
uint16(0) == 0x5a4d and filesize < 300KB and all of them
}
This YARA rule can be deployed in the following contexts:
This rule contains 2 string patterns in its detection logic.
Here are 3-5 specific false positive scenarios for the “Detects CobaltStrike beacons” rule, including suggested filters and exclusions:
Legitimate Enterprise Endpoint Management Tools
User-Agent headers unique to the enterprise tool (e.g., filtering out SCCM-Client or Tanium-Agent).Scheduled Administrative Maintenance Jobs
Process Name and Command Line arguments associated with known administrative scripts (e.g., exclude processes named BackupAgent.exe or PowerShell jobs containing keywords like “ComplianceCheck”).Cloud-Based SaaS Application Heartbeats