Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
DFIR4vSphere — Module Powershell pour la forensique VMWare vSphere | Kitploit
Outils/GitHubGitHub/anssi-fr/dfir4vsphere
Sécurité de l'Infrastructure CloudOutils DéfensifsCriminalistique RéseauAudit de ConfigurationAnalyse ForensiqueCriminalistique NumériqueRéponse aux IncidentsAnalyse de Journaux
GitHubanssi-fr/dfir4vsphere

DFIR4vSphere

Module Powershell pour la forensique VMWare vSphere

Voir le dépôt
18520il y a 1 anVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

DFIR4vSphere

Docker Image CI


Table des matières :

  1. Description du module
  2. Installation et prérequis
  3. Collecte de données Start-VC_Investigation
  4. Collecte de données Start-ESXi_Investigation
  5. Fichiers générés
  6. Analyse des journaux avec Splunk
  7. Quand les acteurs de la menace chiffrent le vCenter

Description du module :

Le module PowerShell DFIR4vSphere collecte les journaux et les artefacts forensiques sur les hôtes ESXi ainsi que sur la console vCenter.

Le module a deux fonctions principales :

  • Start-VC_Investigation : Cette fonction collecte tous les appels d'API vSphere enregistrés sur le vCenter ; ces journaux sont appelés événements VI. Vous pouvez également collecter uniquement les événements considérés comme intéressants. L'inventaire ESXi, les permissions vCenter et le rapport des utilisateurs sont également générés par la fonction. En option, un support bundle pour l'appliance vCenter peut être généré.
  • Start-ESXi_Investigation : Collecte les données forensiques sur un ou plusieurs hôtes ESXi. En option, un support bundle pour chaque hyperviseur ciblé peut être généré.

DFIR4vSphere a été présenté pour la première fois au CoRI&IN 2022 (Conférence sur la réponse aux incidents et l’investigation numérique). Les diapositives de la présentation, en français, sont disponibles ici. Il a également été présenté au SANS DFIR Summit 2022, un enregistrement de la présentation est disponible ici.

Installation et prérequis :

Installation manuelle.

DFIR4vSphere utilise le module VMware PowerCLI, veuillez l'installer avant d'utiliser le module :

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

Une fois installé, localisez le chemin de vos modules PowerShell avec la commande suivante :

root@kitploit:~
PS> $env:PSModulePath

Copiez le dossier DFIR4vSphere dans l'un des chemins de modules, par exemple :

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

Le module DFIR4vSphere est installé, redémarrez la console PowerShell et chargez le module :

root@kitploit:~
PS> Import-module DFIR4vSphere

Vous devez ensuite vous connecter au vCenter que vous investiguez avant de lancer la collecte de données :

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

Utiliser Docker pour exécuter DFIR4vSphere.

Utilisez docker-compose pour construire l'image, exécuter le conteneur et monter un volume pour récupérer les journaux :

root@kitploit:~
sudo docker-compose run dfir4vsphere

Le module est prêt à l'emploi.

Collecte de données Start-VC_Investigation :

Collectez les événements VI du vCenter des 30 derniers jours :

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

Effectuez la même collecte avec le support bundle du vCenter, faites-le si vous suspectez une compromission de l'appliance vCenter elle-même ; dans ce cas, vous devez également mener une investigation forensique Linux classique sur l'hôte vCenter :

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

Le paramètre LightVIEvents collecte uniquement les types d'événements considérés comme intéressants. Utilisez cette option si l'infrastructure investiguée est grande et que la collecte normale est trop lente.

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

Avec LightVIEventTypesId, vous pouvez filtrer les types d'événements spécifiques que vous souhaitez collecter. Une liste complète des identifiants de types d'événements est disponible ici. Par exemple, pour récupérer uniquement les événements d'authentification sur le vCenter, vous pouvez lancer la commande suivante :

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"

La rétention par défaut des journaux pour les événements VI est de 30 jours, mais vous pouvez essayer de récupérer des événements plus anciens. Parfois, les journaux sont récupérés au-delà de la stratégie de rétention configurée.

Collecte de données Start-ESXi_Investigation :

Cette commande prend en entrée un hôte ESXi par son nom ou récupéré avec la cmdlet PowerCLI Get-VMHost. Par exemple, pour effectuer une collecte de base sur tous les hôtes ESXi attachés au vCenter :

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

La commande ci-dessus génère plusieurs fichiers CSV décrivant les processus en cours d'exécution, les connexions ouvertes, les comptes locaux et récupère divers paramètres de configuration...

Si vous avez également besoin de récupérer les journaux locaux de l'ESXi (tels que shell.log ou auth.log), vous devrez générer un support bundle.

La commande ci-dessous récupère tous les ESXi d'un cluster donné et génère pour chaque hyperviseur un support bundle.

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

Vous pouvez également cibler un hôte ESXi particulier et générer son support bundle en indiquant son nom.

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

Générer des support bundles pour chaque ESXi attaché à un vCenter peut prendre du temps dans les grands environnements.

Fichiers générés :

Les fichiers générés par chaque fonction sont :

  • Start-VC_Investigation : Un journal et quatre fichiers CSV sont créés dans le dossier racine. Les événements VI sont situés dans le répertoire VI_Events_%VC_Name% ; si vous collectez tous les événements, ils sont stockés dans un dossier par jour ; si vous utilisez le paramètre LightVIEvents, ils sont stockés dans un fichier par type d'événement. En option, si le paramètre VCBundle est activé, une archive tgz est générée dans le répertoire Support_Bundles.
  • Start-ESXi_Investigation : Un journal est généré dans le dossier racine. Pour chaque hyperviseur investigué, un dossier %ESX_Name% est créé ; dans ce dossier, plusieurs fichiers CSV sont générés : processus en cours d'exécution, services, connexions ouvertes sont collectés... En option, si le paramètre ESXBundle est activé, une archive tgz est générée dans le répertoire Support_Bundles.

Le lancement des différentes fonctions générera une structure de répertoires similaire :

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
│    │   │   ...
│    └───...

Analyse des journaux avec Splunk :

Une fois la collecte terminée avec les deux fonctions, vous obtiendrez des journaux provenant de :

  • Start-VC_Investigation : Les événements VI collectés sont au format JSON et peuvent être facilement indexés dans Splunk en utilisant le champ JSON CreatedTime comme horodatage.
  • Start-ESXi_Investigation : Les journaux locaux ESXi récupérés dans les support bundles et situés dans le répertoire /var/run/log peuvent également être indexés en utilisant les types de sources disponibles dans le Splunk addon pour ESXi.

Quand les acteurs de la menace chiffrent le vCenter :

Dans certains cas de ransomware, l'acteur de la menace (TA) tue le VC et peut également réinitialiser les comptes root locaux ESXi. Dans ce cas, votre seule chance est de restaurer le vCenter à partir d'une sauvegarde ; les ESXi compromis se rattacheront ensuite automatiquement au vCenter, puis vous pourrez lancer DFIR4vSphere. Pour accéder à nouveau aux ESXi compromis avec des comptes locaux, vous pouvez effectuer une réinitialisation de mot de passe via les appels API vCenter (voici un script pour effectuer l'action https://www.hypervisor.fr/?p=5655)

Télécharger l’outil