This rule detects the presence of known Cobalt Strike indicators of compromise, which adversaries frequently deploy to establish command-and-control channels and execute post-exploitation activities within the network. Proactively hunting for these IOCs in Azure Sentinel allows the SOC team to identify active or dormant implants before they can be leveraged for lateral movement or data exfiltration, reducing the mean time to detection for high-severity threats.
Malware Family: Cobalt Strike Total IOCs: 3 IOC Types: ip:port
| Type | Value | Threat Type | First Seen | Confidence |
|---|---|---|---|---|
| ip:port | 156[.]239[.]4[.]189:8081 | botnet_cc | 2026-09-27 | 100% |
| ip:port | 8[.]148[.]241[.]203:443 | botnet_cc | 2026-09-27 | 100% |
| ip:port | 123[.]60[.]102[.]111:443 | botnet_cc | 2026-09-27 | 100% |
// Hunt for network connections to known malicious IPs
// Source: ThreatFox - Cobalt Strike
let malicious_ips = dynamic(["123.60.102.111", "156.239.4.189", "8.148.241.203"]);
CommonSecurityLog
| where DestinationIP in (malicious_ips) or SourceIP in (malicious_ips)
| project TimeGenerated, SourceIP, DestinationIP, DestinationPort, DeviceAction, Activity
| order by TimeGenerated desc
// Hunt in Defender for Endpoint network events
let malicious_ips = dynamic(["123.60.102.111", "156.239.4.189", "8.148.241.203"]);
DeviceNetworkEvents
| where RemoteIP in (malicious_ips)
| project Timestamp, DeviceName, RemoteIP, RemotePort, InitiatingProcessFileName, ActionType
| order by Timestamp desc
| Sentinel Table | Notes |
|---|---|
CommonSecurityLog | Ensure this data connector is enabled |
DeviceNetworkEvents | Ensure this data connector is enabled |
beacon binary (or a renamed variant) as a lightweight, cross-platform remote execution tool for ad-hoc script deployment during a maintenance window, rather than for its intended C2 purpose.
jenkins.exe, gitlab-runner.exe, azure-pipelines-agent.exe) or where the command line contains specific internal script paths (e.g., C:\Scripts\Deploy\*.ps1).beacon functionality to push updates to a fleet of legacy Windows 7 endpoints that cannot run standard WMI or PSExec, using a renamed binary to avoid antivirus heuristics.
C:\ProgramData\ITSupport\ directory or where the parent process is powershell.exe and the command line includes the internal parameter -InternalDeploy.qualys_agent.exe, tenable_agent.exe) or where the process path resides within the scanner’s installation directory (e.g., C:\Program Files\Qualys\).beacon.dll) for integration testing in a local development VM, where the process is short-lived and terminated by the IDE.