This detection rule identifies potential unknown malware infections by correlating network and endpoint telemetry against a curated set of 19 emerging Indicators of Compromise (IOCs) from ThreatFox. Proactively hunting for these signals in Azure Sentinel is critical to uncover stealthy threats that evade signature-based defenses, enabling the SOC team to isolate compromised assets before lateral movement occurs.
Malware Family: Unknown malware Total IOCs: 19 IOC Types: domain, url, ip:port
| Type | Value | Threat Type | First Seen | Confidence |
|---|---|---|---|---|
| ip:port | 54[.]54[.]27[.]128:443 | botnet_cc | 2026-08-13 | 75% |
| ip:port | 185[.]199[.]197[.]93:7443 | botnet_cc | 2026-08-13 | 75% |
| ip:port | 139[.]180[.]136[.]200:7443 | botnet_cc | 2026-08-13 | 75% |
| url | hxxps://validationreq.top/i-MXpmecIOMmvf/ | payload_delivery | 2026-08-13 | 90% |
| domain | trainingforwarriors.com | payload_delivery | 2026-08-13 | 75% |
| ip:port | 139[.]196[.]231[.]194:80 | botnet_cc | 2026-08-13 | 100% |
| url | hxxps://bc1collection.com/ | payload_delivery | 2026-08-13 | 90% |
| ip:port | 139[.]196[.]231[.]194:8080 | botnet_cc | 2026-08-13 | 100% |
| ip:port | 139[.]196[.]231[.]194:60000 | botnet_cc | 2026-08-13 | 100% |
| ip:port | 139[.]196[.]231[.]194:443 | botnet_cc | 2026-08-13 | 100% |
| ip:port | 156[.]239[.]47[.]245:8888 | botnet_cc | 2026-08-13 | 100% |
| ip:port | 139[.]196[.]231[.]194:22 | botnet_cc | 2026-08-13 | 100% |
| ip:port | 156[.]239[.]47[.]245:443 | botnet_cc | 2026-08-13 | 100% |
| ip:port | 198[.]199[.]86[.]166:7443 | botnet_cc | 2026-08-13 | 100% |
| domain | crownoasis.org | payload_delivery | 2026-08-13 | 75% |
| domain | mpe2000.info | payload_delivery | 2026-08-13 | 75% |
| url | hxxp://185[.]93[.]89[.]72/wget | payload_delivery | 2026-08-13 | 100% |
| domain | piji.com.au | payload_delivery | 2026-08-13 | 75% |
| ip:port | 156[.]239[.]47[.]245:22 | botnet_cc | 2026-08-13 | 100% |
// Hunt for network connections to known malicious IPs
// Source: ThreatFox - Unknown malware
let malicious_ips = dynamic(["54.54.27.128", "185.199.197.93", "198.199.86.166", "139.196.231.194", "139.180.136.200", "156.239.47.245"]);
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(["54.54.27.128", "185.199.197.93", "198.199.86.166", "139.196.231.194", "139.180.136.200", "156.239.47.245"]);
DeviceNetworkEvents
| where RemoteIP in (malicious_ips)
| project Timestamp, DeviceName, RemoteIP, RemotePort, InitiatingProcessFileName, ActionType
| order by Timestamp desc
// Hunt for DNS queries to known malicious domains
// Source: ThreatFox - Unknown malware
let malicious_domains = dynamic(["trainingforwarriors.com", "crownoasis.org", "mpe2000.info", "piji.com.au"]);
DnsEvents
| where Name has_any (malicious_domains)
| project TimeGenerated, Computer, Name, IPAddresses, QueryType
| order by TimeGenerated desc
// Hunt for access to known malicious URLs
// Source: ThreatFox - Unknown malware
let malicious_urls = dynamic(["https://validationreq.top/i-MXpmecIOMmvf/", "https://bc1collection.com/", "http://185.93.89.72/wget"]);
UrlClickEvents
| where Url has_any (malicious_urls)
| project Timestamp, AccountUpn, Url, ActionType, IsClickedThrough
| order by Timestamp desc
| Sentinel Table | Notes |
|---|---|
CommonSecurityLog | Ensure this data connector is enabled |
DeviceNetworkEvents | Ensure this data connector is enabled |
DnsEvents | Ensure this data connector is enabled |
UrlClickEvents | Ensure this data connector is enabled |
Here are 5 specific false positive scenarios for the ThreatFox: Unknown malware IOCs detection rule, along with targeted filters and exclusions suitable for an enterprise environment:
Scenario: Automated Security Scanning by Endpoint Protection Agents
C:\Program Files\Microsoft Defender\MsMpEng.exe or C:\ProgramData\CrowdStrike\FalconSensor\csfalcon.exe. Additionally, exclude network traffic originating from internal IP ranges designated as “Security Management” (e.g., 10.50.20.0/24) during the scheduled maintenance window (02:00 – 04:00 UTC).Scenario: Software Deployment via Configuration Management Tools
ccmsetup.exe (SCCM) or ansible-runner. Furthermore, add a logic condition to suppress alerts if the file hash matches entries in the internal “Approved Software Catalog” database within 24 hours of the first