Detection: ESXi Shared or Stolen Root Account

Description

This detection monitors for signs of a shared or potentially compromised root account on ESXi hosts by tracking the number of unique IP addresses logging in as root within a short time window. Multiple logins from different IPs in a brief period may indicate credential misuse, lateral movement, or account compromise.

1`esxi_syslog` Message="*root*" Message="*logged in*" NOT Message="*root@127.0.0.1*" 
2| rex field=_raw "root@(?<SrcIpAddr>\d{1,3}(?:\.\d{1,3}){3})" 
3| rex field=_raw "Z (?<dest>[\w\.]+)\s" 
4| bin _time span=15m 
5| stats min(_time) as firstTime max(_time) as lastTime dc(SrcIpAddr) AS distinct_ip_count values(SrcIpAddr) AS SrcIps by dest 
6| where distinct_ip_count > 1 
7| `security_content_ctime(firstTime)` 
8| `security_content_ctime(lastTime)` 
9| `esxi_shared_or_stolen_root_account_filter`

Data Source

Name Platform Sourcetype Source
VMWare ESXi Syslog N/A 'vmw-syslog' 'vmware:esxlog'

Macros Used

Name Value
esxi_syslog sourcetype=vmw-syslog OR sourcetype=vmware:esxlog*
esxi_shared_or_stolen_root_account_filter search *
esxi_shared_or_stolen_root_account_filter is an empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.

Annotations

Default Configuration

This detection is configured by default in Splunk Enterprise Security to run with the following settings:

Setting Value
Disabled true
Cron Schedule 0 * * * *
Earliest Time -70m@m
Latest Time -10m@m
Schedule Window auto
Creates Risk Event True
This configuration file applies to all detections of type anomaly. These detections will use Risk Based Alerting.

Implementation

This is based on syslog data generated by VMware ESXi hosts. To implement this search, you must configure your ESXi systems to forward logs to your Splunk deployment. These logs must be ingested with the appropriate Splunk Technology Add-on for VMware ESXi Logs, which provides field extractions and CIM compatibility.

Known False Positives

Limited false positives in most environments, however tune as needed

Associated Analytic Story

Risk Based Analytics (RBA)

Risk Message:

Root login from multiple IPs on ESXi host $dest$.

Risk Object Risk Object Type Risk Score Threat Objects
dest system 50 No Threat Objects

References

Detection Testing

Test Type Status Dataset Source Sourcetype
Validation Passing N/A N/A N/A
Unit Passing Dataset vmware:esxlog vmw-syslog
Integration ✅ Passing Dataset vmware:esxlog vmw-syslog

Replay any dataset to Splunk Enterprise by using our replay.py tool or the UI. Alternatively you can replay a dataset into a Splunk Attack Range


Source: GitHub | Version: 1