ID | Technique | Tactic |
---|---|---|
T1110 | Brute Force | Credential Access |
Detection: ESXi SSH Brute Force
Description
This detection identifies signs of SSH brute-force attacks by monitoring for a high number of failed login attempts within a short time frame. Such activity may indicate an attacker attempting to gain unauthorized access through password guessing.
Search
1`esxi_syslog` Message="*Authentication failure for*"
2| rex "for (?<user>[\w]+) from (?<src_ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})"
3| rex field=_raw "Z (?<dest>[\w\.]+)\s"
4| bin _time span=5m
5| stats min(_time) as firstTime max(_time) as lastTime count by user, src_ip, dest
6| where count > 10
7| `security_content_ctime(firstTime)`
8| `security_content_ctime(lastTime)`
9| `esxi_ssh_brute_force_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_ssh_brute_force_filter | search * |
esxi_ssh_brute_force_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 |
Implementation
This is based on syslog data generated by VMware ESXi hosts. To implement this search, you must configure your ESXi systems to forward syslog output 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:
Attempted SSH brute force on ESXi host $dest$.
Risk Object | Risk Object Type | Risk Score | Threat Objects |
---|---|---|---|
dest | system | 25 | No Threat Objects |
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