← Back to SOC feed Coverage →

ThreatFox: BADBOX IOCs

ioc-hunt HIGH ThreatFox
CommonSecurityLogDeviceNetworkEventsDnsEvents
apk-badboxiocthreatfox
This rule was pulled from an open-source repository and enriched with AI. Validate in a test environment before deploying to production.
View original rule at ThreatFox →
Retrieved: 2026-07-12T11:00:00Z · Confidence: high

Hunt Hypothesis

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.

IOC Summary

Malware Family: BADBOX Total IOCs: 11 IOC Types: domain, ip:port

TypeValueThreat TypeFirst SeenConfidence
domaina1.ishano456.sbsbotnet_cc2026-07-12100%
domaint1.ishano456.sbsbotnet_cc2026-07-12100%
domaina1.xmsae.sbsbotnet_cc2026-07-12100%
domaint1.xmsae.sbsbotnet_cc2026-07-12100%
domaina1.xshaon123.sbsbotnet_cc2026-07-12100%
domaint1.xshaon123.sbsbotnet_cc2026-07-12100%
ip:port172[.]96[.]114[.]6:80botnet_cc2026-07-12100%
ip:port98[.]98[.]71[.]19:80botnet_cc2026-07-12100%
ip:port98[.]98[.]71[.]20:80botnet_cc2026-07-12100%
ip:port165[.]154[.]202[.]29:9999botnet_cc2026-07-12100%
ip:port144[.]217[.]243[.]201:80payload_delivery2026-07-12100%

KQL: Ip Hunt

// 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

KQL: Ip Hunt Device

// 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

KQL: Domain Hunt

// 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

Required Data Sources

Sentinel TableNotes
CommonSecurityLogEnsure this data connector is enabled
DeviceNetworkEventsEnsure this data connector is enabled
DnsEventsEnsure this data connector is enabled

References

False Positive Guidance

Here are 4 specific false positive scenarios for the ThreatFox: BADBOX IOCs detection rule in an enterprise environment, including suggested filters and exclusions:

Original source: https://threatfox.abuse.ch/browse/malware/apk.badbox/