This hunt targets adversary behavior where IoT devices or internal systems communicate with known Mirai botnet command-and-control infrastructure via specific malicious URLs identified by URLhaus. Proactively hunting for these connections in Azure Sentinel is critical to detect early-stage botnet infections before they escalate into large-scale distributed denial-of-service attacks or lateral movement campaigns.
Threat: mirai Total URLs: 3 Active URLs: 3
| URL | Status | Threat | Date Added |
|---|---|---|---|
hxxp://180.245.46.51:34600/bin.sh | online | malware_download | 2026-07-18 |
hxxp://175.43.138.10:47103/i | online | malware_download | 2026-07-18 |
hxxp://36.70.238.164:33041/i | online | malware_download | 2026-07-18 |
// Hunt for DNS resolution of URLhaus malicious domains
// Threat: mirai
let malicious_domains = dynamic(["180.245.46.51", "175.43.138.10", "36.70.238.164"]);
DnsEvents
| where Name has_any (malicious_domains)
| project TimeGenerated, Computer, Name, IPAddresses
| order by TimeGenerated desc
// Hunt for web traffic to URLhaus malicious domains
let malicious_domains = dynamic(["180.245.46.51", "175.43.138.10", "36.70.238.164"]);
CommonSecurityLog
| where RequestURL has_any (malicious_domains) or DestinationHostName has_any (malicious_domains)
| project TimeGenerated, SourceIP, RequestURL, DestinationHostName, DeviceAction
| order by TimeGenerated desc
| Sentinel Table | Notes |
|---|---|
CommonSecurityLog | Ensure this data connector is enabled |
DnsEvents | Ensure this data connector is enabled |
Here are specific false positive scenarios for the URLhaus: Mirai Malicious URLs detection rule, including suggested filters and exclusions tailored for an enterprise environment:
Automated Firmware Update Scans by Network Management Tools
host.name contains “NMS-Server” or specific asset tags like “Network-Mgmt”) and restrict the rule to trigger only if the user agent is not a known management tool (e.g., exclude User-Agents containing “Meraki-Cloud”, “FortiClient”, or “UniFi-Poller”).Scheduled Vulnerability Scans by Security Appliances
source.ip in range 10.20.50.0/24) and filter by process name (e.g., process.name equals “Nessus.exe” or “QualysAgent”). Additionally, add a condition to suppress alerts if the HTTP status code is `20