T1505.006
vSphere Installation Bundles
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.
Microsoft Sentinel / Defender
kusto
// T1505.006 — vSphere Installation Bundle (VIB) detection
// ESXi is not typically covered by MDE; this query targets vCenter management events
// Part 1: Detect esxcli or vSphere CLI commands for VIB installation from Windows management hosts
let VIBInstallCLI = DeviceProcessEvents
| where Timestamp > ago(24h)
| where FileName in~ ("esxcli.exe", "esxcfg-dumppart.exe", "vicfg-nics.pl",
"powercli.exe", "vmwarecli.exe")
or ProcessCommandLine has_any ("software vib install", "vib install", "--vibs",
"software vib list", "esxcli software")
| extend DetectionType = "VIB_Install_CLI_Command"
| project Timestamp, DeviceName, AccountName, FileName, ProcessCommandLine,
InitiatingProcessFileName, InitiatingProcessCommandLine, DetectionType;
// Part 2: Detect PowerCLI commands for VIB management from Windows hosts
let VIBPowerCLI = DeviceProcessEvents
| where Timestamp > ago(24h)
| where FileName in~ ("powershell.exe", "pwsh.exe")
| where ProcessCommandLine has_any ("Install-EsxSoftwarePackage", "Add-EsxSoftwareDepot",
"Get-EsxSoftwarePackage", "software vib",
"esxcli.software.vib", "--force", "esxupdate")
and ProcessCommandLine has_any ("vib", "esxi", "vmware", "vsphere")
| extend DetectionType = "VIB_PowerCLI_Management"
| project Timestamp, DeviceName, AccountName, FileName, ProcessCommandLine,
InitiatingProcessFileName, InitiatingProcessCommandLine, DetectionType;
// Part 3: Detect .vib or .zip files that could be VIB packages written to disk
let VIBFileDrop = DeviceFileEvents
| where Timestamp > ago(24h)
| where ActionType == "FileCreated"
| where FileName endswith ".vib" or FileName endswith ".vgz"
| extend DetectionType = "VIB_File_Created"
| project Timestamp, DeviceName, AccountName, FileName, FolderPath,
InitiatingProcessFileName, InitiatingProcessCommandLine, DetectionType;
union VIBInstallCLI, VIBPowerCLI, VIBFileDrop
| sort by Timestamp desc critical severity
medium confidence
Data Sources
Process: Process Creation File: File Creation Microsoft Defender for Endpoint
Required Tables
DeviceProcessEvents DeviceFileEvents
False Positives
- Legitimate VMware administrator deploying authorized VIBs for driver updates or vSAN components
- VMware Update Manager (VUM) performing scheduled ESXi patch deployments
- VMware Tools upgrades that deploy VIB packages to ESXi hosts
- Authorized network adapter or storage driver VIBs installed by infrastructure team
Last updated: 2026-04-20 Research depth: deep
References (4)
Unlock Pro Content
Get the full detection package for T1505.006 including response playbook, investigation guide, and atomic red team tests.
Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance