This hunt targets the presence of known AgentTesla URLs, which are frequently used to deliver the AgentTesla infostealer for credential harvesting and remote access. Proactively hunting for these indicators in Azure Sentinel allows the SOC to identify compromised endpoints or web sessions before the malware establishes persistence or exfiltrates sensitive data.
Threat: AgentTesla Total URLs: 5 Active URLs: 2
| URL | Status | Threat | Date Added |
|---|---|---|---|
hxxps://lively-fog-af49.pablosoftwareplus.workers.dev/tfDyw | offline | malware_download | 2026-09-09 |
hxxps://long-wildflower-b4f5.gustavosoftware.workers.dev/KNikZ | offline | malware_download | 2026-09-09 |
hxxps://pub-80a0cc6d7e3d475dac1422cf49122362.r2.dev/mianxer.png | offline | malware_download | 2026-09-09 |
hxxp://epsinf.com/yom/app/centos/4.jpg | online | malware_download | 2026-09-09 |
hxxp://blueoceanealtd.co.ke/our-expertise/4.jpg | online | malware_download | 2026-09-09 |
// Hunt for DNS resolution of URLhaus malicious domains
// Threat: AgentTesla
let malicious_domains = dynamic(["epsinf.com", "blueoceanealtd.co.ke"]);
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(["epsinf.com", "blueoceanealtd.co.ke"]);
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 DevOps team uses a CI/CD pipeline (e.g., Azure DevOps or Jenkins) to deploy a custom internal monitoring agent that fetches configuration or telemetry data from a staging endpoint. If the staging environment’s URL is inadvertently registered on URLhaus due to a shared IP or similar path structure, the legitimate curl or wget calls from build agents will trigger the rule.
curl.exe, wget.exe, or powershell.exe when the parent process is a known CI/CD agent (e.g., vstsagent.exe, jenkins-agent.jar) and the destination URL matches the internal staging domain pattern (e.g., *.staging.internal.corp).Scenario: An IT administrator runs a scheduled PowerShell script during maintenance windows to update a legacy line-of-business application. The script downloads a patch file or configuration bundle from a vendor’s distribution server. If the vendor’s CDN or distribution URL has been recently flagged by URLhaus (possibly due to a compromise or misclassification), the download activity will generate an alert.
powershell.exe or cmd.exe and the command line contains explicit download verbs (Invoke-WebRequest, curl, wget) targeting known vendor domains (e.g., *.vendor-cdn.com) during defined maintenance hours (e.g., 02:00–04:00 UTC).Scenario: A security team performs a red team exercise or internal penetration test, intentionally using AgentTesla C2 infrastructure or mimicking its URL patterns to validate detection coverage. The testers use tools like Cobalt Strike or Beacon to connect to the known malicious URLs, triggering the rule as expected but creating noise in the SOC queue if not tagged.