Skip to content

VMware ESXi

Overview

VMware ESXi is a hypervisor and an operation system. It serves virtual computers while running directly on the server hardware

The following Sekoia.io built-in rules match the intake VMware ESXi. This documentation is updated automatically and is based solely on the fields used by the intake which are checked against our rules. This means that some rules will be listed but might not be relevant with the intake.

SEKOIA.IO x VMware ESXi on ATT&CK Navigator

Address Space Layout Randomization (ASLR) Alteration

ASLR is a security feature used by the Operating System to mitigate memory exploit, attacker might want to disable it

  • Effort: intermediate
Advanced IP Scanner

Detects the use of Advanced IP Scanner. Seems to be a popular tool for ransomware groups.

  • Effort: master
Audio Capture via PowerShell

Detects audio capture via PowerShell Cmdlet

  • Effort: intermediate
AzureEdge in Command Line

Detects use of azureedge in the command line.

  • Effort: advanced
BazarLoader Persistence Using Schtasks

Detects possible BazarLoader persistence using schtasks. BazarLoader will create a Scheduled Task using a specific command line to establish its persistence.

  • Effort: intermediate
Blue Mockingbird Malware

Attempts to detect system changes made by Blue Mockingbird

  • Effort: elementary
CertOC Loading Dll

Detects when a user installs certificates by using CertOC.exe to loads the target DLL file.

  • Effort: intermediate
Change Default File Association

When a file is opened, the default program used to open the file (also called the file association or handler) is checked. File association selections are stored in the Windows Registry and can be edited by users, administrators, or programs that have Registry access or by administrators using the built-in assoc utility. Applications can modify the file association for a given file extension to call an arbitrary program when a file with the given extension is opened.

  • Effort: advanced
Clear EventLogs Through CommandLine

Detects a command that clears event logs which could indicate an attempt from an attacker to erase its previous traces.

  • Effort: intermediate
Commonly Used Commands To Stop Services And Remove Backups

Detects specific commands used regularly by ransomwares to stop services or remove backups

  • Effort: intermediate
Control Panel Items

Detects the malicious use of a control panel item

  • Effort: advanced
DNS Exfiltration and Tunneling Tools Execution

Well-known DNS exfiltration tools execution

  • Effort: intermediate
Data Compressed With Rar With Password

An adversary may compress data in order to make it portable and minimize the amount of data sent over the network, this could be done the popular rar command line program. This is a more specific one for rar where the arguments allow to encrypt both file data and headers with a given password.

  • Effort: intermediate
Debugging Software Deactivation

Deactivation of some debugging softwares using taskkill command. It was observed being used by Ransomware operators.

  • Effort: elementary
Default Encoding To UTF-8 PowerShell

Detects PowerShell encoding to UTF-8, which is used by Sliver implants. The command line just sets the default encoding to UTF-8 in PowerShell.

  • Effort: advanced
Disable Task Manager Through Registry Key

Detects commands used to disable the Windows Task Manager by modifying the proper registry key in order to impair security tools. This technique is used by the Agent Tesla RAT, among others.

  • Effort: elementary
Disabled IE Security Features

Detects from the command lines or the registry, changes that indicate unwanted modifications to registry keys that disable important Internet Explorer security features. This has been used by attackers during Operation Ke3chang.

  • Effort: advanced
Domain Trust Discovery Through LDAP

Detects attempts to gather information on domain trust relationships that may be used to identify lateral movement opportunities. "trustedDomain" which is detected here is a Microsoft Active Directory ObjectClass Type that represents a domain that is trusted by, or trusting, the local AD DOMAIN. Several tools are using LDAP queries in the end to get the information (DSQuery, sometimes ADFind as well, etc.)

  • Effort: elementary
Dynamic Linker Hijacking From Environment Variable

LD_PRELOAD and LD_LIBRARY_PATH are environment variables used by the Operating System at the runtime to load shared objects (library.ies) when executing a new process, attacker can overwrite this variable to attempts a privileges escalation.

  • Effort: advanced
ETW Tampering

Detects a command that clears or disables any ETW Trace log which could indicate a logging evasion

  • Effort: intermediate
Exchange PowerShell Snap-Ins To Export Exchange Mailbox Data

Detects PowerShell SnapIn command line, often used with Get-Mailbox to export Exchange mailbox data.

  • Effort: intermediate
Exfiltration Domain In Command Line

Detects commands containing a domain linked to http exfiltration.

  • Effort: intermediate
HackTools Suspicious Process Names In Command Line

Detects the default process name of several HackTools and also check in command line. This rule is here for quickwins as it obviously has many blind spots.

  • Effort: intermediate
High Privileges Network Share Removal

Detects high privileges shares being deleted with the net share command.

  • Effort: intermediate
ICacls Granting Access To All

Detects suspicious icacls command granting access to all, used by the ransomware Ryuk to delete every access-based restrictions on files and directories. ICacls is a built-in Windows command to interact with the Discretionary Access Control Lists (DACLs) which can grand adversaries higher permissions on specific files and folders.

  • Effort: elementary
KeePass Config XML In Command-Line

Detects a command-line interaction with the KeePass Config XML file. It could be used to retrieve informations or to be abused for persistence.

  • Effort: intermediate
Lazarus Loaders

Detects different loaders used by the Lazarus Group APT

  • Effort: elementary
Linux Bash Reverse Shell

To bypass some security equipement or for a sack of simplicity attackers can open raw reverse shell using shell commands

  • Effort: intermediate
Linux Shared Lib Injection Via Ldso Preload

Detect ld.so.preload modification for shared lib injection, technique used by attackers to load arbitrary code into process

  • Effort: intermediate
Listing Systemd Environment

Detects a listing of systemd environment variables. This command could be used to do reconnaissance on a compromised host.

  • Effort: advanced
Malicious Browser Extensions

Detects browser extensions being loaded with the --load-extension and -base-url options, which works on Chromium-based browsers. We are looking for potentially malicious browser extensions. These extensions can get access to informations.

  • Effort: advanced
MalwareBytes Uninstallation

Detects command line being used by attackers to uninstall Malwarebytes.

  • Effort: intermediate
MavInject Process Injection

Detects process injection using the signed Windows tool Mavinject32.exe (which is a LOLBAS)

  • Effort: intermediate
Microsoft Defender Antivirus Disable Using Registry

The rule detects attempts to deactivate/disable Microsoft Defender Antivirus using registry modification via command line.

  • Effort: master
Microsoft Defender Antivirus Disabled Base64 Encoded

Detects attempts to deactivate/disable Windows Defender through base64 encoded PowerShell command line.

  • Effort: intermediate
Microsoft Defender Antivirus History Directory Deleted

Windows Defender history directory has been deleted. Could be an attempt by an attacker to remove its traces.

  • Effort: elementary
Microsoft Defender Antivirus Restoration Abuse

The rule detects attempts to abuse Windows Defender file restoration tool. The Windows Defender process is allowed to write files in its own protected directory. This functionality can be used by a threat actor to overwrite Windows Defender files in order to prevent it from running correctly or use Windows Defender to execute a malicious DLL.

  • Effort: intermediate
Microsoft Defender Antivirus Set-MpPreference Base64 Encoded

Detects changes of preferences for Windows Defender scan and updates. Configure Windows Defender using base64-encoded commands is suspicious and could be related to malicious activities.

  • Effort: intermediate
Microsoft Defender Antivirus Signatures Removed With MpCmdRun

Detects attempts to remove Windows Defender Signatures using MpCmdRun legitimate Windows Defender executable. No signatures mean Windows Defender will be less effective (or completely useless depending on the option used).

  • Effort: elementary
NTDS.dit File Interaction Through Command Line

Detects interaction with the file NTDS.dit through command line. This is usually really suspicious and could indicate an attacker trying copy the file to then look for users password hashes.

  • Effort: intermediate
NetSh Used To Disable Windows Firewall

Detects NetSh commands used to disable the Windows Firewall

  • Effort: intermediate
Netsh Allowed Python Program

Detects netsh command that performs modification on Firewall rules to allow the program python.exe. This activity is most likely related to the deployment of a Python server or an application that needs to communicate over a network. Threat actors could use it for data extraction, hosting a webshell or else.

  • Effort: intermediate
Netsh Port Forwarding

Detects netsh commands that enable a port forwarding between to hosts. This can be used by attackers to tunnel RDP or SMB shares for example.

  • Effort: intermediate
Netsh RDP Port Forwarding

Detects netsh commands that configure a port forwarding of port 3389 used for RDP. This is commonly used by attackers during lateralization on windows environments.

  • Effort: elementary
New DLL Added To AppCertDlls Registry Key

Dynamic-link libraries (DLLs) that are specified in the AppCertDLLs value in the Registry key can be abused to obtain persistence and privilege escalation by causing a malicious DLL to be loaded and run in the context of separate processes on the computer. Logging for Registry events is needed in the Sysmon configuration (events 12 and 13).

  • Effort: intermediate
Nimbo-C2 User Agent

Nimbo-C2 Uses an unusual User-Agent format in its implants.

  • Effort: intermediate
NlTest Usage

Detects attempts to gather information on domain trust relationships that may be used to identify lateral movement opportunities. These command lines were observed in numerous attacks, but also sometimes from legitimate administrators for debugging purposes. The rule does not cover very basics commands but rather the ones that are interesting for attackers to gather information on a domain.

  • Effort: advanced
Non-Legitimate Executable Using AcceptEula Parameter

Detects accepteula in command line with non-legitimate executable name. Some attackers are masquerading SysInternals tools with decoy names to prevent detection.

  • Effort: advanced
Outlook Registry Access

Detection of accesses to Microsoft Outlook registry hive, which might contain sensitive information.

  • Effort: master
Phorpiex DriveMgr Command

Detects specific command used by the Phorpiex botnet to execute a copy of the loader during its self-spreading stage. As described by Microsoft, this behavior is unique and easily identifiable due to the use of folders named with underscores "__" and the PE name "DriveMgr.exe".

  • Effort: elementary
Potential Bazar Loader User-Agents

Detects potential Bazar loader communications through the user-agent

  • Effort: elementary
Potential Lemon Duck User-Agent

Detects LemonDuck user agent. The format used two sets of alphabetical characters separated by dashes, for example "User-Agent: Lemon-Duck-[A-Z]-[A-Z]".

  • Effort: elementary
PowerCat Function Loading

Detect a basic execution of PowerCat. PowerCat is a PowerShell function allowing to do basic connections, file transfer, shells, relays, generate payloads.

  • Effort: intermediate
PowerShell AMSI Deactivation Bypass Using .NET Reflection

Detects Request to amsiInitFailed that can be used to disable AMSI (Antimalware Scan Interface) Scanning. More information about Antimalware Scan Interface https://docs.microsoft.com/en-us/windows/win32/amsi/antimalware-scan-interface-portal.

  • Effort: elementary
PowerShell EncodedCommand

Detects popular file extensions in commands obfuscated in base64 run through the EncodedCommand option.

  • Effort: advanced
Powershell UploadString Function

Powershell's uploadXXX functions are a category of methods which can be used to exfiltrate data through native means on a Windows host.

  • Effort: intermediate
Process Memory Dump Using Comsvcs

Detects the use of comsvcs in command line to dump a specific proces memory. This techinique is widlely used by attackers for privilege escalation and pivot.

  • Effort: elementary
Process Memory Dump Using Rdrleakdiag

Detects the use of rdrleakdiag.exe in command line to dump the memory of a process. This technique is used by attackers for privilege escalation and pivot.

  • Effort: elementary
Process Trace Alteration

PTrace syscall provides a means by which one process ("tracer") may observe and control the execution of another process ("tracee") and examine and change the tracee's memory and registers. Attacker might want to abuse ptrace functionnality to analyse memory process. It requires to be admin or set ptrace_scope to 0 to allow all user to trace any process.

  • Effort: advanced
Python HTTP Server

Detects command used to start a Simple HTTP server in Python. Threat actors could use it for data extraction, hosting a webshell or else.

  • Effort: intermediate
Qakbot Persistence Using Schtasks

Detects possible Qakbot persistence using schtasks.

  • Effort: intermediate
RTLO Character

Detects RTLO (Right-To-Left character) in file and process names.

  • Effort: elementary
Raccine Uninstall

Detects commands that indicate a Raccine removal from an end system. Raccine is a free ransomware protection tool.

  • Effort: elementary
RedMimicry Winnti Playbook Registry Manipulation

Detects actions caused by the RedMimicry Winnti playbook. Logging for Registry events is needed in the Sysmon configuration (events 12 and 13).

  • Effort: elementary
Rubeus Tool Command-line

Detects command line parameters used by Rubeus, a toolset to interact with Kerberos and abuse it.

  • Effort: advanced
SEKOIA.IO Intelligence Feed

Detect threats based on indicators of compromise (IOCs) collected by SEKOIA's Threat and Detection Research team.

  • Effort: elementary
SOCKS Tunneling Tool

Detects the usage of a SOCKS tunneling tool, often used by threat actors. These tools often use the socks5 commandline argument, however socks4 can sometimes be used as well. Unfortunately, socks alone (without any number) triggered too many false positives.

  • Effort: intermediate
Spyware Persistence Using Schtasks

Detects possible Agent Tesla or Formbook persistence using schtasks. The name of the scheduled task used by these malware is very specific (Updates/randomstring).

  • Effort: intermediate
Suncrypt Parameters

Detects SunCrypt ransomware's parameters, most of which are unique.

  • Effort: elementary
Suspicious Cmd File Copy Command To Network Share

Copy suspicious files through Windows cmd prompt to network share

  • Effort: intermediate
Suspicious DLL Loading By Ordinal

Detects suspicious DLL Loading by ordinal number in a non legitimate or rare folders. For example, Sofacy (APT28) used this technique to load their Trojan in a campaign of 2018.

  • Effort: intermediate
Suspicious Microsoft Defender Antivirus Exclusion Command

Detects PowerShell commands aiming to exclude path, process, IP address, or extension from scheduled and real-time scanning. These commands can be used by attackers or malware to avoid being detected by Windows Defender. Depending on the environment and the installed software, this detection rule could raise false positives. We recommend customizing this rule by filtering legitimate processes that use Windows Defender exclusion command in your environment.

  • Effort: master
Suspicious Netsh DLL Persistence

Detects persitence via netsh helper. Netsh interacts with other operating system components using dynamic-link library (DLL) files. Adversaries may establish persistence by executing malicious content triggered by Netsh Helper DLLs.

  • Effort: elementary
Suspicious PowerShell Invocations - Specific

Detects suspicious PowerShell invocation command parameters

  • Effort: intermediate
Suspicious PrinterPorts Creation (CVE-2020-1048)

Detects new commands that add new printer port which point to suspicious file

  • Effort: advanced
Suspicious Taskkill Command

Detects rare taskkill command being used. It could be related to Baby Shark malware.

  • Effort: intermediate
Suspicious Windows Installer Execution

Detects suspicious execution of the Windows Installer service (msiexec.exe) which could be used to install a malicious MSI package hosted on a remote server.

  • Effort: intermediate
Usage Of Procdump With Common Arguments

Detects the usage of Procdump sysinternals tool with some common arguments and followed by common patterns.

  • Effort: intermediate
WCE wceaux.dll Creation

Detects wceaux.dll creation while Windows Credentials Editor (WCE) is executed.

  • Effort: intermediate
WMI Install Of Binary

Detection of WMI used to install a binary on the host. It is often used by attackers as a signed binary to infect an host.

  • Effort: elementary
WMIC Uninstall Product

Detects products being uninstalled using WMIC command.

  • Effort: intermediate
WiFi Credentials Harvesting Using Netsh

Detects the harvesting of WiFi credentials using netsh.exe.

  • Effort: advanced
Windows Firewall Changes

Detects changes on Windows Firewall configuration

  • Effort: master
Wmic Process Call Creation

The WMI command-line (WMIC) utility provides a command-line interface for Windows Management Instrumentation (WMI). WMIC is compatible with existing shells and utility commands. Although WMI is supposed to be an administration tool, it is wildy abused by threat actors. One of the reasons is WMI is quite stealthy. This rule detects the wmic command line launching a process on a remote or local host.

  • Effort: intermediate
Wmic Service Call

Detects either remote or local code execution using wmic tool.

  • Effort: intermediate
XCopy Suspicious Usage

Detects the usage of xcopy with suspicious command line options (used by Judgment Panda APT in the past). The rule is based on command line only in case xcopy is renamed.

  • Effort: advanced

Event Categories

The following table lists the data source offered by this integration.

Data Source Description
Application logs collect activities from the hypervisor
Network device logs collect network activities from the hypervisor
Authentication logs collect audit log from the hypervisor
DNS records collect information about DNS communication
Process use of network collect network activites from the hypervisor
Services collect activities from the hypervisor
System calls collect activities from the hypervisor

In details, the following table denotes the type of events produced by this integration.

Name Values
Kind event
Category ["authentication"], ["configuration"], ["file"], ["network"], ["process"], ["session"], session
Type ["info"], end, start

Event Samples

Find below few samples of events and how they are normalized by Sekoia.io.

{
    "message": "Disconnected from user root 1.2.3.4 port 33398",
    "event": {
        "category": [
            "authentication"
        ],
        "kind": "event",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 33398
    },
    "user": {
        "name": "root"
    }
}
{
    "message": " Connection closed by authenticating user root 1.2.3.4 port 60292 [preauth]",
    "event": {
        "category": [
            "authentication"
        ],
        "kind": "event",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 60292
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "Received disconnect from 1.2.3.4 port 33398:11: disconnected by user",
    "event": {
        "category": [
            "authentication"
        ],
        "kind": "event",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 33398
    }
}
{
    "message": "Accepted publickey for root from 1.2.3.4 port 33398 ssh2: RSA SHA256:qzkqJPyBUdiJUC4i/wbJzkYLTcUWwXRArUT90bUw2E0",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 33398
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "info hostd[2099656] [Originator@6876 sub=Vimsvc.ha-eventmgr opID=esxcli-76-ecbf] Event 975279 : User root@127.0.0.1 logged in as pyvmomi",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ],
        "user": [
            "pyvmomi",
            "root"
        ]
    },
    "source": {
        "address": "127.0.0.1",
        "ip": "127.0.0.1",
        "user": {
            "name": "root"
        }
    },
    "user": {
        "name": "pyvmomi"
    }
}
{
    "message": "info hostd[2099656] [Originator@6876 sub=Vimsvc.ha-eventmgr opID=esxcli-76-ecbf] Event 975279 : User root@127.0.0.1 logged in as pyvmomi Python/3.8.13 (VMkernel; 7.0.3; x86_64)",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ],
        "user": [
            "pyvmomi",
            "root"
        ]
    },
    "source": {
        "address": "127.0.0.1",
        "ip": "127.0.0.1",
        "user": {
            "name": "root"
        }
    },
    "user": {
        "name": "pyvmomi"
    },
    "user_agent": {
        "device": {
            "name": "Other"
        },
        "name": "Other",
        "original": "Python/3.8.13 (VMkernel; 7.0.3; x86_64)",
        "os": {
            "name": "Other"
        }
    }
}
{
    "message": "pam_unix(sshd:session): session closed for user root",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "pam_unix(sshd:session): session opened for user root by (uid=0)",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "start"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "info hostd[2099656] [Originator@6876 sub=Vimsvc opID=esxcli-a5-20ae] [Auth]: User root",
    "event": {
        "category": [
            "authentication"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "info hostd[2099656] [Originator@6876 sub=Default opID=esxcli-76-ecbf] Accepted password for user root from 127.0.0.1",
    "event": {
        "category": [
            "configuration"
        ],
        "kind": "event",
        "type": [
            "change"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "127.0.0.1",
        "ip": "127.0.0.1"
    },
    "user": {
        "name": "root"
    }
}
{
    "message": " [GenericCorrelator] 3087878379676us: [vob.user.ssh.session.closed] SSH session was closed for 'root@1.2.3.4'.",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4"
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "   [GenericCorrelator] 3087878318715us: [vob.user.ssh.session.opened] SSH session was opened for 'root@1.2.3.4'.",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "start"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4"
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "vobd: [GenericCorrelator] 2216526905us: [vob.user.ssh.session.failed] SSH login has failed for 'root@1.2.3.4'.",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "outcome": "failure",
        "type": [
            "start"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4"
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "   error hostd[2099655] [Originator@6876 sub=Vimsvc.ha-eventmgr] Event 974676 : SSH session was closed for 'root@1.2.3.4'.",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4"
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "info hostd[2099655] [Originator@6876 sub=Vimsvc.ha-eventmgr] Event 974676 : SSH session was opened for 'root@1.2.3.4'.",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "type": [
            "start"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4"
    },
    "user": {
        "name": "root"
    }
}
{
    "message": " DHCPDISCOVER on vmk1 to 255.255.255.255 port 67 interval 1",
    "event": {
        "category": [
            "network"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "255.255.255.255"
        ]
    },
    "source": {
        "address": "255.255.255.255",
        "ip": "255.255.255.255",
        "port": 67
    }
}
{
    "message": "Connection from 1.2.3.4 port 33398",
    "event": {
        "category": [
            "network"
        ],
        "kind": "event",
        "type": [
            "connection"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 33398
    }
}
{
    "message": "Executing 'vsanmgmtd -s -c /etc/vmware/vsan/vsanmgmt-config.xml'",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "process": {
        "command_line": "vsanmgmtd -s -c /etc/vmware/vsan/vsanmgmt-config.xml"
    }
}
{
    "message": "USER root pid 9919303 cmd /bin/hostd-probe.sh ++group=host/vim/vmvisor/hostd-probe/stats/sh",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "process": {
        "command_line": "/bin/hostd-probe.sh ++group=host/vim/vmvisor/hostd-probe/stats/sh",
        "pid": 9919303
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "User 'root' running command 'USER=vpxuser python ++group=host/vim/vmvisor/ntnx /get_one_time_password.py'",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "process": {
        "command_line": "USER=vpxuser python ++group=host/vim/vmvisor/ntnx /get_one_time_password.py"
    },
    "related": {
        "user": [
            "root"
        ]
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "healthd: info healthd[2100572] [Originator@6876 sub=PluginLauncher] Launching binary: /usr/lib/vmware/healthd/plugins/bin/ssdStorage.py ++group=healthd-plugins,mem=40 -u http://localhost:9996",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "process": {
        "command_line": "/usr/lib/vmware/healthd/plugins/bin/ssdStorage.py ++group=healthd-plugins,mem=40 -u http://localhost:9996"
    }
}
{
    "message": "sshd[2102293]: Invalid user administrator from 1.2.3.4 port 41100",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "outcome": "failure",
        "type": [
            "start"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "administrator"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 41100
    },
    "user": {
        "name": "administrator"
    }
}
{
    "message": "sshd[2102280]: Disconnected from authenticating user root 1.2.3.4 port 21289 [preauth]",
    "event": {
        "category": [
            "session"
        ],
        "kind": "event",
        "outcome": "success",
        "type": [
            "end"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "related": {
        "ip": [
            "1.2.3.4"
        ],
        "user": [
            "root"
        ]
    },
    "source": {
        "address": "1.2.3.4",
        "ip": "1.2.3.4",
        "port": 21289
    },
    "user": {
        "name": "root"
    }
}
{
    "message": "error fdm[7599783] [Originator@6876 sub=Cluster opID=SWI-3cc8cdca] stat(/vmfs/volumes/aaaaaaaa-bbbbbbbb/.vSphere-HA/FDM-ffffffff-1111-4444-5555-666666666666-7-9999999-lnpvcr02) failed with Permission denied",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "outcome": "failed",
        "reason": "Permission denied",
        "type": [
            "info"
        ]
    },
    "host": {
        "name": "fdm"
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": "Unlocked esx.conf",
    "event": {
        "category": [
            "file"
        ],
        "kind": "event",
        "reason": "Unlocked",
        "type": [
            "info"
        ]
    },
    "file": {
        "name": "esx.conf"
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " Event [1201736] [2-3]  (fileName = \"ds:///vmfs/volumes/63985d53-c3598817-6688-5c6f69e18ad0/HDD01-835/HDD01-835.vmdk\", datastore = 'vim.Datastore:d6543eda-9347-4b38-b803-6f5048248ea8:datastore-2809', backingObjectId = \"\", diskMode = \"independent_nonpersistent\", split = <unset>, writeThrough = <unset>, thinProvisioned = false, eagerlyScrub = false, uuid = \"6000C299-dd5c-07cb-b868-3600b53d2781\", contentId = \"5c1d0d8547e8b15283e287f5cb18ef5e\", changeId = <unset>, parent = null, deltaDiskFormat = <unset>, digestEnabled = false, deltaGrainSize = <unset>, deltaDiskFormatVariant = <unset>, sharing = <unset>, keyId = null, cryptoIntegrityProtectionType = <unset>), deltaDiskFormat = \"seSparseFormat\", digestEnabled = false, deltaGrainSize = 4, deltaDiskFormatVariant = <unset>, sharing = \"sharingNone\", keyId = null, cryptoIntegrityProtectionType = <unset>), connectable = null, slotInfo = null, controllerKey = 1000, unitNumber = 3, numaNode = <unset>, capacityInKB = 104857600, capacityInBytes = 107374182400, shar",
    "event": {
        "category": [
            "file"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "file": {
        "name": "ds:///vmfs/volumes/63985d53-c3598817-6688-5c6f69e18ad0/HDD01-835/HDD01-835.vmdk"
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": "Using key ID  527683eb-be00-ae48-b12d-06e5cffe4c7e to encrypt",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "encrypt",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "wmware": {
        "esxi": {
            "key": {
                "id": "527683eb-be00-ae48-b12d-06e5cffe4c7e"
            }
        }
    }
}
{
    "message": "  [iscsiCorrelator] 3087813295957us: [vob.iscsi.connection.stopped] iScsi connection 0 stopped for vmhba64:C0:T3",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "iScsi connection 0 stopped for vmhba64:C0:T3",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": "  info fdm[7599763] [Originator@6876 sub=Invt opID=SWI-1b24a1a7] Unset _accessible for datastore (/vmfs/volumes/aaaaaaaa-bbbbbbbb)",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Unset _accessible for datastore (/vmfs/volumes/aaaaaaaa-bbbbbbbb)",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " connection 4:0 (iqn.2010-06.com.nutanix:iscsi-dump-c086c177-a1f4-48be-a3b2-b5f2b6517fa6 if=default addr=1.2.3.4:3260 (TPGT:1 ISID:0x1)  (T3 C0)) has recovered (2 attempts)",
    "event": {
        "category": [
            "network"
        ],
        "kind": "event",
        "reason": "has recovered (2 attempts)",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " info hostd[2099655] [Originator@6876 sub=Vimsvc.ha-eventmgr opID=233816e0 user=vpxuser] Event 974626 : User vpxuser@10.79.50.22 logged out (login time: Tuesday, 18 April, 2023 07:14:36 AM, number of API invocations: 3, user agent: pyvmomi)",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Event 974626 : User vpxuser@10.79.50.22 logged out (login time: Tuesday, 18 April, 2023 07:14:36 AM, number of API invocations: 3, user agent: pyvmomi)",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " info rhttpproxy[2102807] [Originator@6876 sub=IO.Connection] Failed to shutdown socket; <io_obj p:0x000000f7c12bd0a8, h:23, <TCP '5.6.7.8 : 443'>, <TCP '1.2.3.4 : 39664'>>, e: 104(shutdown: Connection reset by peer)",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Failed to shutdown socket; <io_obj p:0x000000f7c12bd0a8, h:23, <TCP '5.6.7.8 : 443'>, <TCP '1.2.3.4 : 39664'>>, e: 104(shutdown: Connection reset by peer)",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": "  verbose rhttpproxy[2099165] [Originator@6876 sub=Proxy Req 06028] Connected to localhost:8307 (/sdk) over <io_obj p:0x000000f7c12be288, h:24, <TCP '127.0.0.1 : 29013'>, <TCP '127.0.0.1 : 8307'>>",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Connected to localhost:8307 (/sdk) over <io_obj p:0x000000f7c12be288, h:24, <TCP '127.0.0.1 : 29013'>, <TCP '127.0.0.1 : 8307'>>",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": "  error kmxa[2098475] [Originator@6876 sub=Libs opID=InitCache-52a74d0e-554c-1fc3-1b1f-bd3c439fd0a3-0] Trust Authority Components not configured.",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Trust Authority Components not configured.",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " verbose fdm[7599763] [Originator@6876 sub=Invt opID=SWI-1361339f] Healthstatus of VM /vmfs/volumes/0ced57f7-f5da65c8/ntpnim02/ntpnim02.vmx on live hostId host-103 : true",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Healthstatus of VM /vmfs/volumes/0ced57f7-f5da65c8/ntpnim02/ntpnim02.vmx on live hostId host-103 : true",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " info hostd[2099655] [Originator@6876 sub=Libs opID=2338d373 user=vpxuser] NetstackInstanceImpl: congestion control algorithm: newreno",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "NetstackInstanceImpl: congestion control algorithm: newreno",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": "info fdm[7599763] [Originator@6876 sub=Invt opID=SWI-1b24a1a7] Unset _accessible for datastore (/vmfs/volumes/aaaaaaaa-bbbbbbbb)",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "reason": "Unset _accessible for datastore (/vmfs/volumes/aaaaaaaa-bbbbbbbb)",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    }
}
{
    "message": " QuerySerialNumber --- real serial number is 1111222233334444",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "wmware": {
        "esxi": {
            "event": {
                "serial_number": 1111222233334444
            }
        }
    }
}
{
    "message": " get_serial_num_of_SATA_SAS_disk---serial num is 1111222233334444",
    "event": {
        "category": [
            "process"
        ],
        "kind": "event",
        "type": [
            "info"
        ]
    },
    "observer": {
        "product": "ESXi",
        "vendor": "VMware"
    },
    "wmware": {
        "esxi": {
            "event": {
                "serial_number": 1111222233334444
            }
        }
    }
}

Extracted Fields

The following table lists the fields that are extracted, normalized under the ECS format, analyzed and indexed by the parser. It should be noted that infered fields are not listed.

Name Type Description
event.category keyword Event category. The second categorization field in the hierarchy.
event.kind keyword The kind of the event. The highest categorization field in the hierarchy.
event.outcome keyword The outcome of the event. The lowest level categorization field in the hierarchy.
event.reason keyword Reason why this event happened, according to the source
event.type keyword Event type. The third categorization field in the hierarchy.
file.name keyword Name of the file including the extension, without the directory.
host.name keyword Name of the host.
observer.product keyword The product name of the observer.
observer.vendor keyword Vendor name of the observer.
process.command_line wildcard Full command line that started the process.
process.pid long Process id.
source.ip ip IP address of the source.
source.port long Port of the source.
source.user.name keyword Short name or login of the user.
user.name keyword Short name or login of the user.
user_agent.original keyword Unparsed user_agent string.
wmware.esxi.event.serial_number number Serial number
wmware.esxi.key.id keyword Key ID

Configure

Prerequisites

An internal log concentrator is required to collect and forward events to Sekoia.io.

Enable Syslog forwarding

Browse to the host thank to the vSphere Client inventory and follow this guide to enable the log forwarding to the log concentrator.

Create the intake

Go to the intake page and create a new intake from the format VMWare ESXi.

Forward logs to Sekoia.io

Please consult the Syslog Forwarding documentation to forward these logs to Sekoia.io.