← Back to SOC feed Coverage →

ThreatFox: VShell IOCs

ioc-hunt HIGH ThreatFox
CommonSecurityLogDeviceNetworkEvents
iocthreatfoxwin-vshell
This rule was pulled from an open-source repository and enriched with AI. Validate in a test environment before deploying to production.
View original rule at ThreatFox →
Retrieved: 2026-05-28T11:00:00Z · Confidence: high

Hunt Hypothesis

The ThreatFox: VShell IOCs rule detects the establishment of encrypted, persistent communication by VShell malware with command-and-control servers, indicating potential long-term adversary presence. SOC teams should proactively hunt for this behavior in Azure Sentinel to identify and mitigate advanced persistent threats leveraging encrypted C2 channels.

IOC Summary

Malware Family: VShell Total IOCs: 11 IOC Types: ip:port

TypeValueThreat TypeFirst SeenConfidence
ip:port122[.]10[.]24[.]112:808botnet_cc2026-05-28100%
ip:port103[.]217[.]197[.]174:8084botnet_cc2026-05-28100%
ip:port165[.]154[.]205[.]34:80botnet_cc2026-05-28100%
ip:port101[.]96[.]216[.]248:8084botnet_cc2026-05-28100%
ip:port101[.]35[.]218[.]150:16231botnet_cc2026-05-28100%
ip:port39[.]106[.]172[.]105:6379botnet_cc2026-05-28100%
ip:port104[.]168[.]100[.]26:61022botnet_cc2026-05-28100%
ip:port113[.]31[.]104[.]220:18084botnet_cc2026-05-28100%
ip:port122[.]10[.]24[.]92:808botnet_cc2026-05-28100%
ip:port122[.]10[.]5[.]218:808botnet_cc2026-05-28100%
ip:port166[.]88[.]209[.]196:8800botnet_cc2026-05-28100%

KQL: Ip Hunt

// Hunt for network connections to known malicious IPs
// Source: ThreatFox - VShell
let malicious_ips = dynamic(["122.10.24.112", "103.217.197.174", "104.168.100.26", "101.96.216.248", "122.10.5.218", "39.106.172.105", "165.154.205.34", "113.31.104.220", "101.35.218.150", "166.88.209.196", "122.10.24.92"]);
CommonSecurityLog
| where DestinationIP in (malicious_ips) or SourceIP in (malicious_ips)
| project TimeGenerated, SourceIP, DestinationIP, DestinationPort, DeviceAction, Activity
| order by TimeGenerated desc

KQL: Ip Hunt Device

// Hunt in Defender for Endpoint network events
let malicious_ips = dynamic(["122.10.24.112", "103.217.197.174", "104.168.100.26", "101.96.216.248", "122.10.5.218", "39.106.172.105", "165.154.205.34", "113.31.104.220", "101.35.218.150", "166.88.209.196", "122.10.24.92"]);
DeviceNetworkEvents
| where RemoteIP in (malicious_ips)
| project Timestamp, DeviceName, RemoteIP, RemotePort, InitiatingProcessFileName, ActionType
| order by Timestamp desc

Required Data Sources

Sentinel TableNotes
CommonSecurityLogEnsure this data connector is enabled
DeviceNetworkEventsEnsure this data connector is enabled

References

False Positive Guidance

Original source: https://threatfox.abuse.ch/browse/malware/win.vshell/