This hunt targets adversary behavior consistent with the Kimwolf threat actor by actively searching for network and host indicators of compromise across the Azure Sentinel environment. Proactively hunting these specific IOCs is critical to rapidly identify early-stage intrusions and mitigate potential lateral movement before the adversary establishes persistence within the organization’s cloud infrastructure.
Malware Family: Kimwolf Total IOCs: 20 IOC Types: ip:port
| Type | Value | Threat Type | First Seen | Confidence |
|---|---|---|---|---|
| ip:port | 165[.]232[.]88[.]245:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 134[.]209[.]93[.]215:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 157[.]245[.]77[.]63:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 64[.]227[.]69[.]17:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 134[.]122[.]48[.]179:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 164[.]92[.]153[.]43:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 209[.]38[.]99[.]84:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 188[.]166[.]121[.]223:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 68[.]183[.]0[.]134:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 188[.]166[.]58[.]104:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 159[.]223[.]212[.]162:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 167[.]99[.]46[.]90:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 209[.]38[.]38[.]123:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 161[.]35[.]85[.]184:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 209[.]38[.]44[.]99:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 152[.]42[.]140[.]47:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 134[.]122[.]57[.]112:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 209[.]38[.]106[.]41:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 206[.]189[.]6[.]103:25001 | botnet_cc | 2026-07-20 | 100% |
| ip:port | 178[.]62[.]251[.]175:25001 | botnet_cc | 2026-07-20 | 100% |
// Hunt for network connections to known malicious IPs
// Source: ThreatFox - Kimwolf
let malicious_ips = dynamic(["164.92.153.43", "134.122.48.179", "209.38.44.99", "178.62.251.175", "209.38.99.84", "134.122.57.112", "152.42.140.47", "209.38.38.123", "157.245.77.63", "159.223.212.162", "161.35.85.184", "64.227.69.17", "68.183.0.134", "206.189.6.103", "209.38.106.41", "167.99.46.90", "165.232.88.245", "188.166.58.104", "188.166.121.223", "134.209.93.215"]);
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(["164.92.153.43", "134.122.48.179", "209.38.44.99", "178.62.251.175", "209.38.99.84", "134.122.57.112", "152.42.140.47", "209.38.38.123", "157.245.77.63", "159.223.212.162", "161.35.85.184", "64.227.69.17", "68.183.0.134", "206.189.6.103", "209.38.106.41", "167.99.46.90", "165.232.88.245", "188.166.58.104", "188.166.121.223", "134.209.93.215"]);
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 |
Here are specific false positive scenarios for the ThreatFox: Kimwolf IOCs detection rule, tailored for a legitimate enterprise environment:
Endpoint Protection Signature Updates via WSUS/SCCM
192.168.10.5/24) or filter by the specific hash of the known update package if it matches a benign baseline version.Scheduled Data Backup and Archiving Jobs
svc-veeam-backup) and restrict the alert scope to exclude file extensions commonly used in archives (e.g., .vbk, .zip, .tar) when the source is the backup server subnet.Third-Party Patch Management Deployment