This detection rule identifies adversary activity involving six specific indicators of compromise (IOCs) linked to the VShell remote access tool, which is frequently leveraged by threat actors for persistent command and control or lateral movement. A proactive hunt in Azure Sentinel is essential because early identification of these IOCs allows the SOC team to isolate compromised endpoints before attackers can establish deep footholds within the network infrastructure.
Malware Family: VShell Total IOCs: 6 IOC Types: ip:port
| Type | Value | Threat Type | First Seen | Confidence |
|---|---|---|---|---|
| ip:port | 8[.]135[.]18[.]143:8085 | botnet_cc | 2026-08-29 | 100% |
| ip:port | 165[.]154[.]226[.]87:8084 | botnet_cc | 2026-08-29 | 100% |
| ip:port | 106[.]53[.]122[.]24:8888 | botnet_cc | 2026-08-29 | 100% |
| ip:port | 8[.]145[.]59[.]5:11112 | botnet_cc | 2026-08-28 | 100% |
| ip:port | 89[.]34[.]227[.]96:8088 | botnet_cc | 2026-08-28 | 100% |
| ip:port | 47[.]94[.]194[.]175:15000 | botnet_cc | 2026-08-28 | 100% |
// Hunt for network connections to known malicious IPs
// Source: ThreatFox - VShell
let malicious_ips = dynamic(["89.34.227.96", "106.53.122.24", "8.135.18.143", "8.145.59.5", "47.94.194.175", "165.154.226.87"]);
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(["89.34.227.96", "106.53.122.24", "8.135.18.143", "8.145.59.5", "47.94.194.175", "165.154.226.87"]);
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 specific false positive scenarios and corresponding filters for the ThreatFox: VShell IOCs detection rule in an enterprise environment:
Scenario: Security Operations Center (SOC) analysts or threat intelligence teams manually importing new indicators into a SIEM platform like Splunk Enterprise Security or Microsoft Sentinel.
Source Host is a known SIEM management node (e.g., splunk-ingest-01) or where the Process Name matches the ingestion tool (e.g., siem_import_service.exe).Scenario: Automated vulnerability scanning performed by Tenable Nessus or Qualys agents during scheduled maintenance windows.
Initiating Process is identified as nessus.exe, qualyspc.exe, or their associated service accounts.Scenario: Endpoint Detection and Response (EDR) agents, such as CrowdStrike Falcon or Carbon Black, performing scheduled policy updates and IOC synchronization.
FalconSensor.exe or cbengine.exe) initiates a download and validation task that matches the rule’s signature.