This hunt targets the Mozi malware family, a prevalent Linux botnet often used for cryptocurrency mining and DDoS attacks, by identifying assets that have communicated with known malicious URLs. Proactively hunting for these indicators in Azure Sentinel is critical to detect compromised workloads or containers that may be silently exfiltrating data or participating in botnet activities before they escalate into larger infrastructure disruptions.
Threat: Mozi Total URLs: 33 Active URLs: 33
| URL | Status | Threat | Date Added |
|---|---|---|---|
hxxp://125.40.54.74:41134/i | online | malware_download | 2026-09-19 |
hxxp://182.113.42.94:45947/bin.sh | online | malware_download | 2026-09-19 |
hxxp://182.124.168.18:40508/bin.sh | online | malware_download | 2026-09-19 |
hxxp://27.215.50.41:56854/i | online | malware_download | 2026-09-19 |
hxxp://42.239.75.112:58966/bin.sh | online | malware_download | 2026-09-19 |
hxxp://182.116.220.139:60858/i | online | malware_download | 2026-09-19 |
hxxp://182.116.119.82:35615/bin.sh | online | malware_download | 2026-09-19 |
hxxp://182.113.42.94:45947/i | online | malware_download | 2026-09-19 |
hxxp://42.239.75.112:58966/i | online | malware_download | 2026-09-19 |
hxxp://2.187.250.85:42203/i | online | malware_download | 2026-09-19 |
hxxp://222.142.203.126:37092/i | online | malware_download | 2026-09-19 |
hxxp://182.116.15.172:52913/bin.sh | online | malware_download | 2026-09-19 |
hxxp://27.215.50.41:56854/bin.sh | online | malware_download | 2026-09-19 |
hxxp://27.215.123.199:46146/i | online | malware_download | 2026-09-19 |
hxxp://39.74.86.198:33823/i | online | malware_download | 2026-09-19 |
hxxp://222.142.246.30:45576/i | online | malware_download | 2026-09-19 |
hxxp://182.127.28.232:46971/bin.sh | online | malware_download | 2026-09-19 |
hxxp://39.74.86.198:33823/bin.sh | online | malware_download | 2026-09-19 |
hxxp://85.96.239.71:58763/i | online | malware_download | 2026-09-19 |
hxxp://219.156.112.197:53161/i | online | malware_download | 2026-09-19 |
hxxp://182.124.168.18:40508/i | online | malware_download | 2026-09-19 |
hxxp://27.204.196.143:37094/bin.sh | online | malware_download | 2026-09-19 |
hxxp://182.121.86.15:48396/i | online | malware_download | 2026-09-19 |
hxxp://38.43.193.197:51516/bin.sh | online | malware_download | 2026-09-19 |
hxxp://41.84.232.245:36129/i | online | malware_download | 2026-09-19 |
// Hunt for DNS resolution of URLhaus malicious domains
// Threat: Mozi
let malicious_domains = dynamic(["182.116.220.139", "182.113.42.94", "39.74.86.198", "2.187.250.85", "85.96.239.71", "27.215.123.199", "182.121.86.15", "182.116.119.82", "222.140.181.143", "182.116.15.172", "182.124.168.18", "42.239.75.112", "219.156.112.197", "125.40.54.74", "27.215.50.41", "42.234.141.150", "182.127.28.232", "41.84.232.245", "27.204.196.143", "222.142.246.30", "38.43.193.197", "222.142.203.126"]);
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(["182.116.220.139", "182.113.42.94", "39.74.86.198", "2.187.250.85", "85.96.239.71", "27.215.123.199", "182.121.86.15", "182.116.119.82", "222.140.181.143", "182.116.15.172", "182.124.168.18", "42.239.75.112", "219.156.112.197", "125.40.54.74", "27.215.50.41", "42.234.141.150", "182.127.28.232", "41.84.232.245", "27.204.196.143", "222.142.246.30", "38.43.193.197", "222.142.203.126"]);
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 |
Scenario: A network operations center (NOC) engineer runs a scheduled curl or wget job to verify the availability of a third-party API endpoint that was previously compromised and listed on URLhaus, but has since been cleaned and re-listed. The detection triggers because the URL matches the known malicious signature, even though the service is now legitimate.
curl.exe, wget.exe) if the destination port is standard HTTP/HTTPS (80/443) and the user context is a service account (e.g., svc_noc_monitor).Scenario: A DevOps team uses a CI/CD pipeline (e.g., Jenkins or GitLab CI) to pull a Docker image or artifact from a private registry that shares a similar URL structure or was temporarily hosted on a domain flagged by URLhaus during a migration. The build agent downloads the artifact, triggering the URL match.
jenkins.exe, gitlab-runner, docker-cli) or filter by the user account (e.g., ci_build_service) when the destination URL ends with common artifact paths like /v2/ or /blobs/.Scenario: A security analyst is performing a manual threat hunt or validation test by intentionally accessing a known Mozi URL from a jump host to confirm the detection rule is firing correctly. This is a controlled test but generates a high-fidelity alert.
10.10.5.50) or the user account (e.g., sec_threat_hunter) if the event occurs during a documented maintenance window or if