This hunt targets adversary behavior consistent with the BADBOX malware campaign by actively searching for network and endpoint artifacts matching its specific set of eleven Indicators of Compromise (IOCs). Proactively hunting for these signatures in Azure Sentinel is critical to identify early-stage infections before they escalate, ensuring rapid containment of this high-severity threat across the organization’s cloud infrastructure.
Malware Family: BADBOX Total IOCs: 11 IOC Types: domain, ip:port
| Type | Value | Threat Type | First Seen | Confidence |
|---|---|---|---|---|
| domain | a1.ishano456.sbs | botnet_cc | 2026-07-12 | 100% |
| domain | t1.ishano456.sbs | botnet_cc | 2026-07-12 | 100% |
| domain | a1.xmsae.sbs | botnet_cc | 2026-07-12 | 100% |
| domain | t1.xmsae.sbs | botnet_cc | 2026-07-12 | 100% |
| domain | a1.xshaon123.sbs | botnet_cc | 2026-07-12 | 100% |
| domain | t1.xshaon123.sbs | botnet_cc | 2026-07-12 | 100% |
| ip:port | 172[.]96[.]114[.]6:80 | botnet_cc | 2026-07-12 | 100% |
| ip:port | 98[.]98[.]71[.]19:80 | botnet_cc | 2026-07-12 | 100% |
| ip:port | 98[.]98[.]71[.]20:80 | botnet_cc | 2026-07-12 | 100% |
| ip:port | 165[.]154[.]202[.]29:9999 | botnet_cc | 2026-07-12 | 100% |
| ip:port | 144[.]217[.]243[.]201:80 | payload_delivery | 2026-07-12 | 100% |
// Hunt for network connections to known malicious IPs
// Source: ThreatFox - BADBOX
let malicious_ips = dynamic(["144.217.243.201", "165.154.202.29", "98.98.71.20", "172.96.114.6", "98.98.71.19"]);
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(["144.217.243.201", "165.154.202.29", "98.98.71.20", "172.96.114.6", "98.98.71.19"]);
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 - BADBOX
let malicious_domains = dynamic(["a1.ishano456.sbs", "t1.ishano456.sbs", "a1.xmsae.sbs", "t1.xmsae.sbs", "a1.xshaon123.sbs", "t1.xshaon123.sbs"]);
DnsEvents
| where Name has_any (malicious_domains)
| project TimeGenerated, Computer, Name, IPAddresses, QueryType
| order by TimeGenerated 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 |
Here are 4 specific false positive scenarios for the ThreatFox: BADBOX IOCs detection rule in an enterprise environment, including suggested filters and exclusions:
Endpoint Protection Scanning of Quarantine Folders
C:\Quarantine folder. This folder often contains archived samples, including known benign files that match BADBOX IOCs (such as specific hash values used in previous threat intelligence exercises). The scanner generates an alert when it detects these “known” hashes during its routine sweep.svc_falcon or LocalSystem) accessing paths containing \Quarantine\, \ThreatIntelligence\, or \SampleRepository\. Alternatively, tune the detection to ignore alerts where the “File Origin” is marked as “Internal Scan” rather than “User Execution.”IT Admin Deployment of Security Baselines via Group Policy
gpupdate.exe) applies these changes on domain-joined workstations, it triggers the detection logic.System user context where the parent process is svchost.exe with the service name gpsvc (Group Policy Client). Additionally, filter out events occurring during the defined maintenance window (e.g., Sundays 02:00–04:00 UTC) when bulk policy updates are