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
Outils/GitHubGitHub/crowdstrike/sccmhound
ReconnaissanceMouvement LatéralCollecte d'InformationsTests d'Intrusion
GitHubcrowdstrike/sccmhound

sccmhound

Un collecteur BloodHound pour Microsoft Configuration Manager

Voir le dépôt
40420il 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
sccmhound — Un collecteur BloodHound pour Microsoft Configuration Manager | Kitploit

SCCMHound

SCCMHound est un collecteur BloodHound en C# pour Microsoft Configuration Manager (MCM). Si vous cherchez un moyen de collecter les informations de session BloodHound à partir des utilisateurs et des ordinateurs de Configuration Manager, alors cet outil est fait pour vous !

Il est vivement recommandé d'importer les données collectées avec celles d'un autre collecteur (SharpHound, SOAPHound, etc.). Peu importe que l'importation soit effectuée avant ou après un autre jeu de données. Cela permet d'obtenir une vue étendue des relations Active Directory de l'organisation cible, complétée par les informations collectées depuis Configuration Manager.

Déclaration de support

SCCMHound est un projet open source, et non un produit CrowdStrike. À ce titre, il n'offre aucun support formel, explicite ou implicite.

Prérequis

SCCMHound cible .NET 4.6.2 afin de garantir la compatibilité avec Windows 10 versions 1607 et ultérieures.

Un compte administrateur MCM est requis avec des droits suffisants pour interroger les informations utilisateurs et ordinateurs. Selon la méthode de collecte, la capacité à exécuter des requêtes CMPivot est également requise. Cet outil a été testé avec un utilisateur disposant du rôle MCM « Full Administrator ».

Le serveur et le code de site peuvent être récupérés depuis la console MCM, ou à l'aide d'un autre outil tel que SharpSCCM. console

Comment le compiler ?

Tout d'abord, vous devez cloner le dépôt. L'option --recursive doit être spécifiée car SCCMHound utilise SharpHoundCommon comme sous-module.

Ex. git clone [email protected]:CrowdStrike/sccmhound.git --recursive

Une fois que vous avez une copie locale, ouvrez SCCMHound.sln dans Visual Studio et compilez !

Comment l'exécuter ?

Pour utiliser la méthode de collecte par défaut, fournissez simplement un serveur et un code de site. SCCMHound utilisera le contexte d'exécution à partir duquel il est invoqué pour s'authentifier auprès de MCM. Par exemple :

root@kitploit:~
SCCMHound.exe --server <server> --sitecode <sitecode>

Pour exécuter SCCMHound depuis le contexte d'un autre utilisateur ou depuis une machine non jointe au domaine, les arguments -u (--username), -p (--password) et -d (--domain) sont requis. Par exemple :

root@kitploit:~
SCCMHound.exe --server <server> --sitecode <sitecode> -u <username> -p <password> -d <domain>

Alternativement, runas /netonly peut être utilisé avant d'invoquer SCCMHound :

root@kitploit:~
runas /netonly /user:[email protected] cmd.exe
cd C:\path\to\SCCMHound
SCCMHound.exe --server <server> --sitecode <sitecode>

Pourquoi est-ce utile ?

Vous vous souvenez de l'époque où les données de session BloodHound étaient faciles à collecter ? Eh bien... beforeafter

De superbes graphes de vol d'identifiants et de mouvements latéraux !!! graph

Qui dois-je blâmer pour cette monstruosité ?

Auteurs et contributeurs

Soyez indulgents pendant que le/les mainteneur(s) étend(ent) les sources de données collectées et corrige(nt) les bugs :)

Je veux juste lancer ça et tout collecter !!!

D'accord, d'accord... Ceci invoquera toutes les méthodes de collecte (y compris les méthodes de collecte CMPivot) :

root@kitploit:~
SCCMHound.exe --server <server> --sitecode <sitecode> -c All

Arguments CLI

root@kitploit:~
  --server                   Requis. Nom d'hôte/adresse IP du serveur SCCM.

  --sitecode                 Requis. Code de site SCCM.

  -c, --collectionmethods    (Défaut : Default) (LocalAdmins, CurrentSessions, All)

  --loop                     (Défaut : false) Active la collecte en boucle.

  --loopduration             (Défaut : 00:30:00) Durée de la boucle.

  --loopsleep                (Défaut : 60) Temps de pause entre les boucles en secondes.

  --hc                       (Défaut : false) Test de santé. Teste simplement l'authentification puis se termine.

  -u, --username             Nom d'utilisateur administrateur SCCM.

  -p, --password             Mot de passe administrateur SCCM.

  -d, --domain               Domaine administrateur SCCM.

  -v, --verbose              (Défaut : false) Affiche des informations détaillées pour faciliter le dépannage.

  --help                     Affiche cet écran d'aide.

  --version                  Affiche les informations de version.

Méthodes de collecte

Default

La méthode de collecte par défaut (aucun argument -c spécifié/requis) construit un jeu de données BloodHound en utilisant uniquement des connexions WMI au serveur de site MCM spécifié. Cette méthode de collecte collectera :

  • Les domaines du jeu de données MCM
  • Les utilisateurs du jeu de données MCM
  • Les groupes du jeu de données MCM
  • Les ordinateurs du jeu de données MCM

Cette méthode de collecte recueille les informations de l'utilisateur actuellement connecté pour chaque objet Ordinateur dans MCM. Cela présente la limitation de ne collecter que l'utilisateur connecté signalé par MCM, qu'un seul ou plusieurs utilisateurs soient authentifiés.

SCCMHound remplit automatiquement les appartenances aux groupes pour les UTILISATEURS uniquement. Les objets Groupe dans ConfigMgr ne semblent pas contenir d'informations sur les groupes enfants ou parents, donc les groupes dans BloodHound n'afficheront que les membres utilisateurs. Cela nécessite une investigation plus approfondie et ne pose pas de problème si l'importation est effectuée avec un autre jeu de données (SharpHound, SOAPHound, etc.).

Pour obtenir une meilleure couverture des sessions avec cette méthode de collecte, l'argument --loop peut être utilisé pour collecter régulièrement les informations de session.

LocalAdmins (mécanisme CMPivot)

Cette méthode de collecte (-c LocalAdmins) exécute le comportement de la méthode de collecte « Default » et interroge également la collection « All Systems » afin de collecter le contenu du groupe local Administrators pour chaque ordinateur géré par MCM.

Remarque (1) : Cette méthode de collecte n'interroge que les appareils en ligne. Elle peut être utilisée avec l'argument --loop pour obtenir une meilleure couverture. Remarque (2) : Cette méthode de collecte utilise CMPivot pour exécuter la requête sur tous les membres.

CurrentSessions (mécanisme CMPivot)

Cette méthode de collecte (-c CurrentSessions) exécute le comportement de la méthode de collecte « Default » et interroge également la collection « All Systems » afin de collecter les informations de session en temps réel pour chaque ordinateur géré par MCM.

Cette méthode de collecte n'interroge que les appareils actuellement en ligne. Elle peut être utilisée avec l'argument --loop pour obtenir une meilleure couverture.

Remarque (1) : Cette méthode de collecte n'interroge que les appareils en ligne. Elle peut être utilisée avec l'argument --loop pour obtenir une meilleure couverture. Remarque (2) : Cette méthode de collecte utilise CMPivot pour exécuter la requête sur tous les membres.

Toutes les méthodes de collecte

Pour exécuter toutes les méthodes de collecte en une seule fois, spécifiez simplement All (-c All) comme méthode de collecte.

Informations concernant les méthodes de collecte basées sur CMPivot

Je recommande de lire la documentation Microsoft suivante pour mieux comprendre le fonctionnement de CMPivot : https://learn.microsoft.com/en-us/mem/configmgr/core/servers/manage/cmpivot

tl;dr - Les méthodes de collecte CMPivot ont été testées par Microsoft dans des environnements comptant jusqu'à 50 000 clients, générant moins de 50 Mo de trafic sur le réseau. Les méthodes de collecte de SCCMHound ont été testées dans des environnements d'environ 1 000 machines, sans problème identifié ni dégradation de service.

N'hésitez pas à signaler tout retour concernant ces méthodes de collecte dans les grands environnements afin qu'il puisse être intégré ici.

Comment puis-je utiliser ce jeu de données ?

En plus d'une excellente couverture des sessions et des administrateurs locaux, SCCMHound enrichit les objets collectés avec des propriétés supplémentaires. Celles-ci peuvent être observées dans l'onglet « Node Info » de BloodHound, préfixées par « sccm ». Par ex. sccmADSiteName.

Les propriétés collectées incluent :

  • Le statut de décommissionnement SCCM
  • Les adresses IP signalées pour les ordinateurs (IPv4 et IPv6)
  • L'horodatage de la dernière connexion
  • Le domaine auquel appartenait le dernier utilisateur connecté
  • Le nom du dernier utilisateur connecté
  • Les sessions énumérées qui n'ont pas pu être résolues (aucun objet BloodHound correspondant n'a pu être créé, par exemple pour les comptes locaux)

Requêtes BloodHound personnalisées pour les jeux de données SCCMHound

customqueries.json fournit des requêtes Cypher qui peuvent être exécutées avec un jeu de données SCCMHound importé. Ce fichier sera enrichi à mesure que de nouvelles fonctionnalités seront ajoutées à SCCMHound.

Pour l'utiliser, copiez simplement customqueries.json vers ~/.config/bloodhound/customqueries.json puis redémarrez BloodHound. Les requêtes apparaîtront alors sous l'onglet « Analysis » de BloodHound.

Télécharger l’outil