This detection rule identifies adversary activity involving known VShell indicators of compromise (IOCs) that signal potential command-and-control or lateral movement within the network. A proactive hunt is essential in Azure Sentinel to rapidly isolate and investigate these specific threats before they escalate into broader incidents, leveraging high-severity alerts to prioritize immediate response actions.
Malware Family: VShell Total IOCs: 5 IOC Types: ip:port
| Type | Value | Threat Type | First Seen | Confidence |
|---|---|---|---|---|
| ip:port | 180[.]76[.]135[.]85:8084 | botnet_cc | 2026-08-25 | 100% |
| ip:port | 154[.]221[.]17[.]62:18080 | botnet_cc | 2026-08-25 | 100% |
| ip:port | 150[.]129[.]80[.]247:8083 | botnet_cc | 2026-08-25 | 100% |
| ip:port | 143[.]92[.]62[.]110:8083 | botnet_cc | 2026-08-25 | 100% |
| ip:port | 114[.]132[.]178[.]92:8084 | botnet_cc | 2026-08-25 | 100% |
// Hunt for network connections to known malicious IPs
// Source: ThreatFox - VShell
let malicious_ips = dynamic(["154.221.17.62", "143.92.62.110", "114.132.178.92", "150.129.80.247", "180.76.135.85"]);
CommonSecurityLog
| where DestinationIP in (malicious_ips) or SourceIP in (malicious_ips)
| project TimeGenerated, SourceIP, DestinationIP, DestinationPort, DeviceAction, Activity
| order by TimeGenerated desc
// Hunt in Defender for Endpoint network events
let malicious_ips = dynamic(["154.221.17.62", "143.92.62.110", "114.132.178.92", "150.129.80.247", "180.76.135.85"]);
DeviceNetworkEvents
| where RemoteIP in (malicious_ips)
| project Timestamp, DeviceName, RemoteIP, RemotePort, InitiatingProcessFileName, ActionType
| order by Timestamp desc
| Sentinel Table | Notes |
|---|---|
CommonSecurityLog | Ensure this data connector is enabled |
DeviceNetworkEvents | Ensure this data connector is enabled |
Here are 3-5 specific false positive scenarios for the ThreatFox: VShell IOCs detection rule, including targeted filters and exclusions suitable for an enterprise environment:
Scenario: Automated Vulnerability Scanning by Qualys or Tenable
Source_IP IN [Qualys_Scan_Range]) and filter events where the process name matches known scanner agents (Process_Name = 'qualyspc.exe' OR Process_Name = 'tenable_agent.exe').Scenario: Scheduled Backup Jobs via Veeam or Commvault
Event_Time BETWEEN 01:00 AND 06:00) where the initiating process is a known backup service (Process_Name = 'VeeamService.exe' OR Process_Name = 'commvault_agent.exe').Scenario: IT Admin Remote Management via Microsoft Endpoint Manager (Intune)