Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
DFIR4vSphere — 用于 VMWare vSphere 取证分析的 Powershell 模块 | Kitploit
工具/GitHubGitHub/anssi-fr/dfir4vsphere
云基础设施安全防御工具网络取证配置审计取证分析数字取证事件响应日志分析
GitHubanssi-fr/dfir4vsphere

DFIR4vSphere

用于 VMWare vSphere 取证分析的 Powershell 模块

查看仓库
1852071年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

DFIR4vSphere

Docker Image CI


目录:

  1. 模块描述
  2. 安装和前置要求
  3. Start-VC_Investigation 数据收集
  4. Start-ESXi_Investigation 数据收集
  5. 生成的文件
  6. 使用 Splunk 进行日志分析
  7. 当威胁行为者加密 vCenter 时

模块描述:

DFIR4vSphere PowerShell 模块用于在 ESXi 主机和 vCenter 控制台上收集日志与取证工件。

该模块主要有两个功能:

  • Start-VC_Investigation:此功能将收集 vCenter 上注册的所有 vSphere API 调用日志,这些日志称为 VI 事件。您也可以只收集被认为感兴趣的事件。该功能还会生成 ESXi 清单、vCenter 权限和用户报告。可选地,可以为 vCenter 设备生成支持包。
  • Start-ESXi_Investigation:在单个或多个 ESXi 主机上收集取证数据。可选地,可以为每个目标虚拟机管理程序生成支持包。

DFIR4vSphere 首次在 CoRI&IN 2022(数字事件响应与调查会议)上进行了展示。演示文稿(法语)可在此处获取。它还在 SANS DFIR Summit 2022 上进行了展示,演示录像可在此处观看。

安装和前置要求:

手动安装

DFIR4vSphere 使用 VMware PowerCLI 模块,请在使用本模块之前进行安装:

root@kitploit:~
 Install-Module VMware.PowerCLI -Scope CurrentUser 

安装完成后,使用以下命令找到您的 PowerShell 模块路径:

root@kitploit:~
PS> $env:PSModulePath

将 DFIR4vSphere 文件夹复制到其中一个模块路径中,例如:

root@kitploit:~
    %USERPROFILE%\Documents\WindowsPowerShell\Modules
    %ProgramFiles%\WindowsPowerShell\Modules
    %SYSTEMROOT%\system32\WindowsPowerShell\v1.0\Modules

DFIR4vSphere 模块已安装,请重启 PowerShell 控制台并加载模块:

root@kitploit:~
PS> Import-module DFIR4vSphere

然后,您应在启动数据收集之前连接到正在调查的 vCenter:

root@kitploit:~
PS> Connect-VIServer %VC_Name%

使用 Docker 运行 DFIR4vSphere

使用 docker-compose 构建镜像、运行容器并挂载卷以获取日志:

root@kitploit:~
sudo docker-compose run dfir4vsphere

模块现已可以使用。

Start-VC_Investigation 数据收集:

收集最近 30 天的 vCenter VI 事件:

root@kitploit:~
$enddate = get-date
$startdate = $enddate.adddays(-30)
Start-VC_Investigation -StartDate $startdate -Enddate $enddate

执行相同的收集并附带 vCenter 支持包。如果怀疑 vCenter 设备本身遭到入侵,请执行此操作;在这种情况下,您还应对 vCenter 主机进行常规的 Linux 取证调查:

root@kitploit:~
$enddate = get-date
$startdate = $enddate.adddays(-30)
Start-VC_Investigation -StartDate $startdate -Enddate $enddate -VCBundle

LightVIEvents 参数将仅收集被认为感兴趣的事件类型。如果被调查的基础设施规模较大且常规收集速度过慢,请使用此选项。

root@kitploit:~
$enddate = get-date
$startdate = $enddate.adddays(-30)
Start-VC_Investigation -StartDate $startdate -Enddate $enddate -LightVIEvents

通过 LightVIEventTypesId,您可以筛选出想要收集的特定事件类型。完整的事件类型 ID 列表可在此处获取。例如,要仅检索 vCenter 上的身份验证事件,可以运行以下命令:

root@kitploit:~
$enddate = get-date
$startdate = $enddate.adddays(-30)
Start-VC_Investigation -StartDate $startdate -Enddate $enddate -LightVIEvents -LightVIEventTypesId "com.vmware.sso.LoginSuccess","com.vmware.sso.LoginFailure"

VI 事件的默认日志保留期为 30 天,但您可以尝试检索更早的事件。有时可以检索到超出配置保留策略的日志。

Start-ESXi_Investigation 数据收集:

此命令接受 ESXi 主机的名称,或通过 Get-VMHost PowerCLI cmdlet 获取的主机作为输入。例如,要对 vCenter 上附加的所有 ESXi 主机执行基本收集:

root@kitploit:~
Get-VMHost | Start-ESXi_Investigation

上述命令将生成多个 CSV 文件,描述正在运行的进程、打开的连接、本地账户,并检索各种配置设置……

如果您还需要检索 ESXi 的本地日志(如 shell.log 或 auth.log),则需要生成支持包。

以下命令会检索指定集群中的每台 ESXi,并为每个虚拟机管理程序生成一个支持包。

root@kitploit:~
Get-VMHost -Location %ClusterName% | Start-ESXi_Investigation -ESXBundle

您也可以通过指定名称来针对特定的 ESXi 主机并生成其支持包。

root@kitploit:~
Start-ESXi_Investigation -Name %ESXi% -ESXBundle

在大型环境中,为 vCenter 上附加的每台 ESXi 生成支持包可能会耗费一些时间。

生成的文件:

每个功能生成的文件如下:

  • Start-VC_Investigation:在根文件夹中创建一个日志文件和四个 CSV 文件。VI 事件存放在 VI_Events_%VC_Name% 目录中;如果收集所有事件,它们会按天存储在子文件夹中;如果使用 LightVIEvents 参数,则会按事件类型存储为单独的文件。可选地,如果启用了 VCBundle 参数,会在 Support_Bundles 目录中生成一个 tgz 归档文件。
  • Start-ESXi_Investigation:在根文件夹中生成一个日志文件。每调查一台虚拟机管理程序,就会创建一个 %ESX_Name% 文件夹,其中会生成多个 CSV 文件:正在运行的进程、服务、打开的连接等。可选地,如果启用了 ESXBundle 参数,会在 Support_Bundles 目录中生成一个 tgz 归档文件。

运行各个功能将生成类似的目录结构:

root@kitploit:~
DFIR4vSphere_Collection
│   Start-ESXi_Investigation.log
│   Start-VC_Investigation.log
│   VC_ConnectionInfo_%VC_Name%.csv
|   VC_ESXiInventory_%VC_Name%.csv
│   VC_Permissions_%VC_Name%.csv
│   VC_Users_%VC_Name%.csv    
└───%ESX_Name1%
│    │   ESXi_%ESX_Name1%_DomJoin.csv
│    │   ESXi_%ESX_Name1%_General.csv
│    │   ESXi_%ESX_Name1%_Hostd.log
│    │   ESXi_%ESX_Name1%_Network_ARPCache.csv
│    │   ESXi_%ESX_Name1%_Network_DNS.csv
│    │   ESXi_%ESX_Name1%_Network_IPv4.csv
│    │   ESXi_%ESX_Name1%_Network_IPv4routes.csv
│    │   ESXi_%ESX_Name1%_Network_Netstat.csv
│    │   ESXi_%ESX_Name1%_Network_VMs.csv
│    │   ESXi_%ESX_Name1%_Network_vSwitchs.csv
│    │   ESXi_%ESX_Name1%_Services.csv
│    │   ESXi_%ESX_Name1%_Software_BaseImage.csv
│    │   ESXi_%ESX_Name1%_Software_Profile.csv
│    │   ESXi_%ESX_Name1%_Software_VIB.csv
│    │   ESXi_%ESX_Name1%_Software_VIBSigCheck.csv
│    │   ESXi_%ESX_Name1%_Storage_FileSystem.csv
│    │   ESXi_%ESX_Name1%_Storage_IOFilter.csv
│    │   ESXi_%ESX_Name1%_System_Accounts.csv
│    │   ESXi_%ESX_Name1%_System_Advanced-delta.csv
│    │   ESXi_%ESX_Name1%_System_Certstore.csv
│    │   ESXi_%ESX_Name1%_System_ExecPolicy.csv
│    │   ESXi_%ESX_Name1%_System_GuestRepo.csv
│    │   ESXi_%ESX_Name1%_System_modules.csv
│    │   ESXi_%ESX_Name1%_System_Kernel-Delta.csv
│    │   ESXi_%ESX_Name1%_System_permissions.csv
│    │   ESXi_%ESX_Name1%_System_process.csv
│    │   ESXi_%ESX_Name1%_System_version.csv
└───%ESX_Name2%
│    │   ESXi_%ESX_Name2%_DomJoin.csv
│    │   ESXi_%ESX_Name2%_General.csv
│    │   ...
└───Support_Bundles
│    │   esx-%ESX_Name1%-YYY-MM-DD.tgz
│    │   esx-%ESX_Name2%-YYY-MM-DD.tgz
│    │   vcsupport-%GUID%.tgz
└───VI_Events_%VC_Name%
│    │   VIEvents_%EventTypeId1%.json
│    │   VIEvents_%EventTypeId2%.json
│    │   ...
│    └───YYYY-MM-DD
│    |   │   VIEvents_YYYY-MM-DD_HH-00-00.json
│    |   │   ...
│    └───YYYY-MM-DD
│    │   │   VIEvents_YYYY-MM-DD_HH-00-00.json
│    │   │   ...
│    └───...

使用 Splunk 进行日志分析:

使用两个功能完成收集后,您将获得来自以下方面的日志:

  • Start-VC_Investigation:收集到的 VI 事件为 JSON 格式,可以通过使用 CreatedTime JSON 字段作为时间戳轻松地在 Splunk 中建立索引。
  • Start-ESXi_Investigation:从支持包中检索到的 ESXi 本地日志位于 /var/run/log 目录中,也可以通过使用 Splunk ESXi 插件中可用的源类型进行索引。

当威胁行为者加密 vCenter 时:

在某些勒索软件事件中,威胁行为者会终止 VC,并且还可能重置 ESXi 的本地 root 账户。在这种情况下,您唯一的办法是从备份中恢复 vCenter,被入侵的 ESXi 随后会自动重新连接到 vCenter,然后您就可以启动 DFIR4vSphere。要使用本地账户重新访问被入侵的 ESXi,您可以通过 vCenter API 调用执行密码重置(以下是执行此操作的脚本 https://www.hypervisor.fr/?p=5655)

下载工具