This rule detects potential compromise through the use of known malicious URLs associated with the ELF malware family, which adversaries often leverage for command-and-control or payload delivery. Proactively hunting for these indicators in Azure Sentinel allows the SOC to identify early-stage intrusions and lateral movement attempts before they escalate into significant data exfiltration or persistence.
Threat: elf Total URLs: 7 Active URLs: 4
| URL | Status | Threat | Date Added |
|---|---|---|---|
hxxp://176.65.139.159/bins/sh4 | offline | malware_download | 2026-09-20 |
hxxp://176.65.139.158/bins/sh4 | offline | malware_download | 2026-09-20 |
hxxp://171.113.233.133:60943/Mozi.m | online | malware_download | 2026-09-20 |
hxxp://45.135.193.63/ppc | online | malware_download | 2026-09-20 |
hxxp://45.135.193.63/mipsel | online | malware_download | 2026-09-20 |
hxxp://176.65.139.159/bins/arm6 | offline | malware_download | 2026-09-20 |
hxxp://176.65.139.159/bins/arm5 | online | malware_download | 2026-09-20 |
// Hunt for DNS resolution of URLhaus malicious domains
// Threat: elf
let malicious_domains = dynamic(["171.113.233.133", "45.135.193.63", "176.65.139.159"]);
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(["171.113.233.133", "45.135.193.63", "176.65.139.159"]);
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 |
svc-cicd-runner) and the destination port is 443/80, provided the User-Agent header contains Jenkins or GitHub-Actions.cron job or Windows Task Scheduler entry downloads a configuration file or license key from an outdated internal repository that has been re-purposed or migrated, causing the URL to match the malicious signature due to path similarity.
app-legacy-config) where the HTTP method is GET and the response status is 200, limited to the specific subnet where the legacy app resides.Nmap or ZAP against internal assets, and the scanner probes a known endpoint that happens to match the URL pattern of the malicious URLhaus entry.
10.20.50.0/24) and the User-Agent contains Nmap or ZAP, or where the request is initiated by the sec-scan service account.