
Projet .NET pour attaquer vCenter
Guide complet et exemples disponibles ici.
SharpSphere donne aux équipes rouges la capacité d'interagir facilement avec les systèmes d'exploitation invités des machines virtuelles gérées par vCenter. Il utilise l'API vSphere Web Services et expose les fonctions suivantes :
SharpSphere prend en charge l'exécution via execute-assembly de Cobalt Strike.
Les versions compilées sont disponibles ici.
Modules disponibles :
SharpSphere.exe help
list List all VMs managed by this vCenter
execute Execute given command in target VM
c2 Run C2 using C3's VMwareShareFile module
upload Upload file to target VM
download Download file from target VM
help Display more information on a specific command.
version Display version information.
SharpSphere.exe list --help
--url Requis. URL SDK vCenter, p.ex. https://127.0.0.1/sdk
--username Nom d'utilisateur vCenter, p.ex. [email protected]. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--password Mot de passe vCenter. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--verbose (Par défaut : false) Affiche les informations détaillées sur vCenter, y compris les groupes et utilisateurs
--help Affiche cet écran d'aide.
--version Affiche les informations de version.
SharpSphere.exe execute --help
--url Requis. URL SDK vCenter, p.ex. https://127.0.0.1/sdk
--username Nom d'utilisateur vCenter, p.ex. [email protected]. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--password Mot de passe vCenter. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--ip Requis. Adresse IP de la VM cible
--guestusername Nom d'utilisateur utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--guestpassword Mot de passe utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--command Requis. Commande à exécuter
--output (Par défaut : false) Recevoir la sortie de votre commande. Crée un fichier temporaire dans outputDir sur l'invité pour enregistrer la sortie. Celui-ci est ensuite téléchargé, affiché dans la console et le fichier supprimé
--outputDir Lorsque --output est fourni, c'est là où le fichier temporaire est stocké.
--linux (Par défaut : false) Définir si la VM cible est Linux
--help Affiche cet écran d'aide.
--version Affiche les informations de version.
SharpSphere.exe c2 --help
--url Requis. URL SDK vCenter, p.ex. https://127.0.0.1/sdk
--username Nom d'utilisateur vCenter, p.ex. [email protected]. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--password Mot de passe vCenter. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--ip Requis. Adresse IP de la VM cible
--guestusername Nom d'utilisateur utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--guestpassword Mot de passe utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--command Requis. Commande à exécuter
--output (Par défaut : false) Recevoir la sortie de votre commande. Crée un fichier temporaire dans outputDir sur l'invité pour enregistrer la sortie. Celui-ci est ensuite téléchargé, affiché dans la console et le fichier supprimé
--outputDir (Par défaut : C:\Windows\Temp) Lorsque --output est fourni, c'est là où le fichier temporaire est stocké.
SharpSphere.exe upload --help
--url Requis. URL SDK vCenter, p.ex. https://127.0.0.1/sdk
--username Nom d'utilisateur vCenter, p.ex. [email protected]. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--password Mot de passe vCenter. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--ip Requis. Adresse IP de la VM cible
--guestusername Nom d'utilisateur utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--guestpassword Mot de passe utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--source Requis. Chemin complet du fichier local à téléverser
--destination Requis. Chemin complet de l'emplacement où le fichier doit être téléversé
--help Affiche cet écran d'aide.
--version Affiche les informations de version.
>SharpSphere.exe download --help
--url Requis. URL SDK vCenter, p.ex. https://127.0.0.1/sdk
--username Nom d'utilisateur vCenter, p.ex. [email protected]. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--password Mot de passe vCenter. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--ip Requis. Adresse IP de la VM cible
--guestusername Nom d'utilisateur utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--guestpassword Mot de passe utilisé pour s'authentifier auprès de l'OS invité. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni
--source Requis. Chemin complet dans l'invité du fichier à télécharger
--destination Requis. Chemin complet du répertoire local où le fichier doit être téléchargé
>SharpSphere.exe dump --help
--url Requis. URL SDK vCenter, p.ex. https://127.0.0.1/sdk
--username Nom d'utilisateur vCenter, p.ex. [email protected]. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--password Mot de passe vCenter. Par défaut, utilise l'utilisateur exécutant et l'authentification directe si non fourni.
--targetvm Requis. VM à instantaner
--snapshot (Par défaut : false) AVERTISSEMENT : Crée puis supprime un instantané. Si non défini, SharpSphere extraira uniquement la mémoire du dernier instantané existant, ou aucun si aucun instantané n'est disponible.
--destination Requis. Chemin complet du répertoire local où le fichier doit être téléchargé
--verbose pour lister les VMs--quiet pour ne pas mentionner chaque paquet transféré--testauth pour confirmer que les identifiants invités sont valides