← Back to Explore
elasticlowTTP
ESXi Virtual Disk Files Enumerated
Detects a shell search under `/vmfs/volumes` for virtual disk and snapshot files (`vmdk`, `vmsn`, `vmsd`). Those files are the guest disks and their on-host recovery points. Listing them builds the set of files a later process can encrypt or delete.
Detection Query
data_stream.dataset:vsphere.log and message:("/vmfs/volumes" and find and (vmdk or vmsd or vmsn))
Author
Elastic
Created
2026/09/30
Data Sources
VMware vSpherelogs-vsphere.log-*
References
Tags
Domain: EndpointData Source: VMware vSphereUse Case: Threat DetectionTactic: DiscoveryResources: Investigation GuideRule Type: Custom Query (KQL)Platform: VMware ESXiThreat: Ransomware
Raw Content
[metadata]
creation_date = "2026/09/30"
integration = ["vsphere"]
maturity = "production"
updated_date = "2026/09/30"
[rule]
author = ["Elastic"]
description = """
Detects a shell search under `/vmfs/volumes` for virtual disk and snapshot files (`vmdk`, `vmsn`, `vmsd`). Those
files are the guest disks and their on-host recovery points. Listing them builds the set of files a later process
can encrypt or delete.
"""
false_positives = [
"""
Capacity reports, backup troubleshooting, and support scripts list `vmdk` files on a
datastore. Review the account and whether the search was followed by process kills or snapshot removal.
""",
]
from = "now-9m"
index = ["logs-vsphere.log-*"]
language = "kuery"
license = "Elastic License v2"
name = "ESXi Virtual Disk Files Enumerated"
note = """## Triage and analysis
### Investigating ESXi Virtual Disk Files Enumerated
The datastore path and the vmdk family of extensions are how ESXi ransomware chooses what to encrypt. The search itself does not change files.
#### Possible investigation steps
- Read the exact find arguments in message, including any -name filter.
- Correlate with later vm process kill, power.off, or snapshot.removeall from the same session.
- If the command stands alone during a known support window, it is often benign.
### False positive analysis
Support bundles and storage reports list virtual disks. Escalation is for a search followed by VM shutdown or snapshot deletion.
### Response and remediation
- If the same session starts killing VMs or deleting snapshots, isolate the host.
- Otherwise record the account and command for hunting across other ESXi hosts.
"""
references = [
"https://lolesxi-project.github.io/LOLESXi/#",
"https://blogs.vmware.com/security/2022/10/esxi-targeting-ransomware-tactics-and-techniques-part-2.html",
"https://detect.fyi/vmware-esxi-logging-detection-opportunities-4fb56411ec21",
]
setup = """## Setup
This rule requires ESXi host logs collected by the Elastic vSphere integration: https://www.elastic.co/docs/reference/integrations/vsphere
"""
risk_score = 21
rule_id = "60f469cf-9adb-59c1-814d-39b78bc702ad"
severity = "low"
tags = [
"Domain: Endpoint",
"Data Source: VMware vSphere",
"Use Case: Threat Detection",
"Tactic: Discovery",
"Resources: Investigation Guide",
"Rule Type: Custom Query (KQL)",
"Platform: VMware ESXi",
"Threat: Ransomware",
]
timestamp_override = "event.ingested"
type = "query"
query = '''
data_stream.dataset:vsphere.log and message:("/vmfs/volumes" and find and (vmdk or vmsd or vmsn))
'''
[[rule.threat]]
framework = "MITRE ATT&CK"
[[rule.threat.technique]]
id = "T1083"
name = "File and Directory Discovery"
reference = "https://attack.mitre.org/techniques/T1083/"
[rule.threat.tactic]
id = "TA0007"
name = "Discovery"
reference = "https://attack.mitre.org/tactics/TA0007/"
[rule.investigation_fields]
field_names = [
"@timestamp",
"message",
"event.original",
"host.hostname",
"log.file.path",
]