ESXi Virtual Machine Process List

Detects esxcli vm process list on an ESXi host. The command lists running virtual machines and the world IDs of their vmx processes. Those IDs are what a later kill command uses to stop the VMs and release the locks on their virtual disks.

Rule type: query
Rule indices:

  • logs-vsphere.log-*

Rule Severity: low
Risk Score: 21
Runs every:
Searches indices from: now-9m
Maximum alerts per execution: 100
References:

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

Version: 1
Rule authors:

  • Elastic

Rule license: Elastic License v2

This rule requires ESXi host logs collected by the Elastic vSphere integration: https://www.elastic.co/docs/reference/integrations/vsphere

esxcli vm process list enumerates running virtual machines and their world ids. A later kill command uses those world ids to stop the VMs.

  • Read message for a plain list versus a list piped into vm process kill.
  • Check the same session for pkill, power.off, snapshot removal, or a search for vmdk files.
  • Confirm with the virtualization owner whether the list was part of a scheduled check.

A standalone list during a change window is commonly benign. A list immediately followed by a force kill of every world id is the shutdown step before encryption.

  • If the same session kills virtual machines or deletes snapshots, isolate the host.
  • Otherwise record the account and source for hunting on other hosts.
data_stream.dataset: "vsphere.log" and event.module: "vsphere" and message: ("esxcli" and "vm process list")
		

Framework: MITRE ATT&CK