Detect vSphere Installation Bundles in Elastic Security
Adversaries abuse VMware vSphere Installation Bundles (VIBs) to achieve persistent access on ESXi hypervisors. VIBs are software packages that persist across reboots by being incorporated into the ESXi boot image. Malicious VIBs can deploy backdoors, custom firewall rules, and startup scripts. UNC3886 used malicious VIBs to install VIRTUALPIE backdoor on ESXi. VIBs can be installed with --force flag to bypass acceptance level requirements, and adversaries masquerade them as PartnerSupported by modifying the XML descriptor. ESXi detection is challenging due to limited logging.
MITRE ATT&CK
- Tactic
- Persistence
- Technique
- T1505 Server Software Component
- Sub-technique
- T1505.006 vSphere Installation Bundles
- Canonical reference
- https://attack.mitre.org/techniques/T1505/006/
Elastic Detection Query
sequence by host.name with maxspan=5m
[process where event.type == "start" and (
process.name : ("esxcli.exe", "esxcfg-dumppart.exe", "powercli.exe", "vmwarecli.exe") or
(process.args : ("software", "vib", "install") and process.args : ("esxcli", "--vibs", "esxcli.software")) or
(process.name : ("powershell.exe", "pwsh.exe") and
process.args : ("Install-EsxSoftwarePackage", "Add-EsxSoftwareDepot", "Get-EsxSoftwarePackage", "esxcli.software.vib", "esxupdate"))
)]
any where true
// Alternative: standalone file detection
// file where event.action == "creation" and file.extension : ("vib", "vgz")
// Standalone process detection (no sequence required)
// process where event.type == "start" and (
// process.name : ("esxcli.exe", "esxcfg-dumppart.exe", "powercli.exe", "vmwarecli.exe") or
// (process.name : ("powershell.exe", "pwsh.exe") and
// process.command_line : ("*Install-EsxSoftwarePackage*", "*Add-EsxSoftwareDepot*",
// "*esxcli.software.vib*", "*esxupdate*", "*--force*vib*"))
// )
process where event.type == "start" and (
process.name : ("esxcli.exe", "esxcfg-dumppart.exe", "powercli.exe", "vmwarecli.exe") or
(process.command_line : ("*software vib install*", "*vib install*", "*--vibs*", "*esxcli software*")) or
(process.name : ("powershell.exe", "pwsh.exe") and
process.command_line : ("*Install-EsxSoftwarePackage*", "*Add-EsxSoftwareDepot*",
"*Get-EsxSoftwarePackage*", "*esxcli.software.vib*",
"*esxupdate*", "*--force*") and
process.command_line : ("*vib*", "*esxi*", "*vmware*", "*vsphere*"))
) Detects vSphere Installation Bundle (VIB) installation activity from Windows management hosts. Covers esxcli/PowerCLI command execution for VIB installation, PowerShell-based VIB management via VMware PowerCLI cmdlets, and creation of .vib/.vgz package files on disk. Targets Windows hosts used to manage ESXi infrastructure where direct ESXi telemetry is unavailable.
Data Sources
Required Tables
False Positives & Tuning
- Legitimate VMware administrators installing authorized update VIBs or vendor patches during scheduled maintenance windows
- Automated patch management scripts using esxcli or PowerCLI as part of approved infrastructure-as-code pipelines
- Security tooling vendors (Carbon Black, CrowdStrike) deploying their own ESXi sensor VIBs as part of authorized endpoint protection deployment
Other platforms for T1505.006
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1List Installed VIBs on ESXi Host
Expected signal: ESXi shell audit log: esxcli command execution. If ESXi syslog is forwarded: syslog entry for esxcli invocation.
- Test 2Check ESXi VIB Acceptance Level
Expected signal: ESXi shell audit log for esxcli execution.
- Test 3Simulate VIB Install CLI Command on Windows Management Host
Expected signal: Sysmon EventCode 1: powershell.exe with CommandLine containing 'vib install' and '--force'.
References (4)
Unlock Pro Content
Get the full detection package for T1505.006 including response playbook, investigation guide, and atomic red team tests.