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
LogHound — Analyseur EVTX post-exploitation pour BloodHound Mapping | Kitploit
Outils/GitHubGitHub/rnb-team/loghound
ReconnaissanceAnalyse ForensiqueCollecte d'InformationsPost-ExploitationCriminalistique NumériqueTests d'IntrusionAuthentificationRed TeamingAnalyse de Journaux
GitHubrnb-team/loghound

LogHound

Analyseur EVTX post-exploitation pour BloodHound Mapping

1114il y a 4 moisPas encore vérifié

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 →
Voir le dépôt
Partager

LogHound

587193175-819ba1ad-8551-4b58-bb54-56ce1f410187

Analyseur EVTX post-exploitation pour le mappage BloodHound

LogHound collecte et analyse les journaux d'événements de sécurité Windows (.evtx) pour extraire les événements d'authentification, les données de session et les métadonnées de connexion en vue de leur ingestion dans BloodHound et pour une télémétrie adverse plus approfondie.

Raisonnement & Aperçu

LogHound a été conçu pour résoudre un problème spécifique pour les équipes Red et les testeurs de pénétration réseau : comment suivre efficacement les cibles de mouvement latéral, déchiffrer les sessions utilisateur actives et établir une propriété définitive des machines sans compromettre la sécurité opérationnelle (OpSec).

Les fichiers de journal d'événements (Security.evtx) sur les contrôleurs de domaine Active Directory peuvent être des monstres de plusieurs gigaoctets. Les techniques de chargement traditionnelles épuisent souvent la mémoire système ou plantent, laissant des artefacts bruyants. LogHound résout ce problème en utilisant un paradigme de streaming par blocs sur la robuste infrastructure Impacket.

Il cartographie les structures réseau, établit qui « possède » réellement une machine en fonction de la fréquence de connexion, calcule les heures de travail précises pour identifier les opérations en dehors des heures (Night Owl), et alimente cette intelligence de manière transparente dans BloodHound CE (v5+).

Étapes d'installation

LogHound repose sur Python 3 et Impacket. Il est fortement recommandé d'utiliser un environnement virtuel.

root@kitploit:~
# 1. Clone the repository
git clone https://github.com/LogHound/LogHound.git
cd LogHound

# 2. (Optional but Recommended) Create a Python virtual environment
python3 -m venv venv
source venv/bin/activate

# 3. Install the required dependencies
pip install -r requirements.txt

Description des paramètres CLI

L'interface CLI de LogHound interagit de manière identique aux modules Impacket standard (comme secretsdump.py), vous obligeant à spécifier un mode d'opération explicite (--local ou --remote).

root@kitploit:~
python loghound.py [[domain/]username[:password]@]<targetName or address> [options]

Modes d'opération (Obligatoire)

  • --local EVTX_FILE: Analyse un fichier .evtx déjà présent sur votre machine locale.
  • --remote: Télécharge Security.evtx depuis le système cible distant en utilisant les identifiants fournis.

Authentification et connexions

  • -hashes LMHASH:NTHASH: Utilise les hashs NTLM pour l'authentification Pass-The-Hash.
  • -k: Utilise l'authentification Kerberos. Récupère les identifiants depuis un fichier .ccache spécifié par la variable d'environnement KRB5CCNAME.
  • -aesKey hex_key: Utilise une clé AES spécifique (128 ou 256 bits) pour Kerberos.
  • -no-pass: Ne demande pas de mot de passe de manière interactive.
  • -keytab KEYTAB_FILE: Utilise un fichier keytab Kerberos pour l'authentification.
  • -dc-ip IP: Adresse IP explicite du contrôleur de domaine.
  • -target-ip IP: Adresse IP explicite de la machine cible (contourne les échecs de résolution de nom NetBIOS).

Formatage de sortie

  • -format {json,csv,md,all}: Dicte le format de sortie textuel. Note : Un rapport HTML interactif et les fichiers JSON BloodHound sont toujours générés. Par défaut : json.
  • -outputfile BASENAME: Préfixe de nom pour les rapports de sortie générés dans les sous-répertoires.

Performances

  • -threads N: Nombre de threads d'analyse à exécuter en parallèle (Défaut : 4).
  • -chunk-size N: Nombre d'enregistrements de journal par bloc d'analyse. Des valeurs plus faibles réduisent la surcharge RAM ; des valeurs plus élevées analysent un peu plus vite (Défaut : 1000).

Exemples

  • Arêtes BloodHound.
Capture d'écran 2026-04-08 195058
  • Rapport HTML.
Capture d'écran 2026-04-08 193914

Architecture et flux de données

LogHound utilise un pipeline analytique hautement découplé et efficace en mémoire :

  1. Collecte (core/collector.py) : Se connecte à la cible via SMB, puis exécute wevtutil epl Security via WMI pour exporter le journal des événements de sécurité vers un fichier temporaire sur la cible. Le fichier exporté est ensuite téléchargé via SMB dans loot/YYYY-MM-DD_<cible>_Security.evtx pour éviter les écrasements.
  2. Analyse (core/parser.py) : Un analyseur de blocs multithreadé parcourt le binaire .evtx brut et émet en continu les événements analysés dans un tampon JSON Line temporaire (jsonl/loghound_dump.jsonl). En cas d'interruption, il peut reprendre à partir de points de contrôle précis.
  3. Analyse (core/analyzer.py) : Parcourt ligne par ligne le flux .jsonl pour maintenir une faible empreinte RAM. Il calcule des dictionnaires d'état intermédiaires (suivi de session, notation de propriété, suivi logique).
  4. Exportation (core/exporter.py et core/exporter_bloodhound.py) : Vide dynamiquement l'état RAM de l'analyse dans les formats d'exportation finaux et .

Pour la logique architecturale approfondie et les erreurs d'ingestion précédemment traitées, veuillez vous référer à la documentation interne à ARCHITECTURE.md.

Description des nœuds, attributs et métriques

LogHound filtre nativement six IDs d'événements de sécurité Windows explicites : 4624, 4634, 4648, 4768, 4769, 4776.

En utilisant ces événements, LogHound enrichit BloodHound CE en liant les attributs personnalisés suivants directement aux nœuds Utilisateur générés via le bloc Properties :

Architecture de fusion BloodHound CE

  • SID ObjectIdentifier : LogHound garantit que les mappages ObjectIdentifier s'alignent parfaitement avec les ingestions SharpHound existantes. Les utilisateurs du domaine AD reçoivent leur SID Windows natif (S-1-5-21-...). Pour éviter le déchirement des nœuds BloodHound, les comptes de machine locaux maintiennent avec précision le standard de repli USER@HOSTNAME.
  • Sessions d'ordinateur : Le fichier computers.json généré utilise exactement la structure de données native SessionAPIResult pour tracer les arêtes réelles « HasSession » entre les machines et les utilisateurs.

Métriques utilisateur personnalisées LogHound

Le moteur d'analyse calcule les heures de travail opérationnelles en fonction des événements de connexion/déconnexion suivis, en omettant les anomalies (comme les sessions s'étendant sur plusieurs jours).

Métriques de propriété des machines

L'analyse détermine le propriétaire explicite de toute station de travail ou adresse IP en comptant les connexions interactives les plus fréquentes. Cela lie un Propriétaire principal au nœud d'origine ainsi qu'un tableau de Autres utilisateurs secondaires.

Avertissement

Ce logiciel est fourni à des fins éducatives, de tests de pénétration autorisés et d'enquêtes judiciaires uniquement. Ne l'utilisez pas contre des réseaux pour lesquels vous n'avez pas d'autorisation explicite d'opérer.

Licence

Ce projet est sous licence Apache License 2.0 - voir le fichier LICENSE.

Remerciements

  • Créé par https://github.com/Nelkmen
  • Inspiré par https://github.com/specterops/bloodhound, https://github.com/fortra/impacket
Télécharger l’outil
html/
json/
Nom de la propriétéTypeDescription de la métrique
loghound_avg_start_timeStringCalcule la première connexion moyenne (00:00 HH:MM) enregistrée sur tous les jours valides observés pour l'utilisateur.
loghound_avg_end_timeStringCalcule la dernière activité moyenne (déconnexion ou dernier contact) enregistrée par jour.
loghound_active_daysIntegerNombre total de jours validés (avec au moins une session correcte) utilisés pour calculer les tableaux de temps moyens.
loghound_outside_hoursBooleanVrai/Faux. Identifie spécifiquement un Noctambule. Évalue à True si la fenêtre active calculée de début à fin de l'utilisateur chevauche la plage nocturne de 22:00 à 06:00.
Avg Hours per DayFloatCalculé en interne comme la différence de temps exacte entre le temps de début moyen et le temps de fin moyen de l'utilisateur. (Affiché dans les rapports texte/HTML).