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
BloodSOCer — Agrège les données MITRE ATT&CK, Sigma et Atomic Red Team dans des graphes BloodHound afin que les analystes SOC puissent cartographier la couverture de détection, identifier les lacunes et enquêter sur les incidents à l'aide de requêtes Cypher. | Kitploit
Outils/GitHubGitHub/scoubi/bloodsocer
Outils DéfensifsFlux et Agrégateurs de MenacesRenseignement sur les MenacesRéponse aux Incidents
GitHubscoubi/bloodsocer

BloodSOCer

Agrège les données MITRE ATT&CK, Sigma et Atomic Red Team dans des graphes BloodHound afin que les analystes SOC puissent cartographier la couverture de détection, identifier les lacunes et enquêter sur les incidents à l'aide de requêtes Cypher.

Voir le dépôt
617il y a 8 moisVé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

BloodSOCer

BloodSOCer Logo

BloodSOCer est un outil d'automatisation Python qui agrège les données de renseignement sur les menaces provenant de plusieurs sources (Mitre ATT&CK, règles Sigma, Atomic Red Team) et produit des fichiers JSON à ingérer dans BloodHound au format OpenGraph. BloodSOCer peut également téléverser les fichiers vers BloodHound et définir les icônes des objets personnalisés s'il dispose de jetons API définis dans la configuration. Les analystes sécurité peuvent ensuite visualiser les données sous n'importe quel angle, et quelques requêtes Cypher sont fournies pour vous aider à démarrer.

Objectifs

L'idée derrière ce projet est d'aider le SOC à cartographier sa couverture du framework Mitre ATT&CK et d'aider lors de la réponse à incident à identifier rapidement les angles morts potentiels. Idéalement, le SOC cartographierait ses propres détections et non celles « toutes faites » de Sigma. Ne vous méprenez pas, Sigma est l'un de mes projets Open Source préférés, mais la plupart des détections sont mieux adaptées pour le contexte/l'enrichissement ou pour générer des pistes de chasse aux menaces que pour créer des tickets exploitables.

Lorsque j'étais dans un SOC, nous essayions souvent de voir/montrer comment nos détections correspondaient au framework ATT&CK. J'ai toujours pensé qu'un graphe de type BloodHound serait génial pour cela, alors j'ai construit ce projet en espérant qu'il aiderait les membres de la Blue Team à visualiser leur couverture et comment les différents éléments sont liés entre eux.

Avec l'ingestion d'ART, il est également possible de voir quels TTP sont faciles à tester et lesquels ne peuvent pas être testés facilement.

Je vous encourage vivement à partager les règles Sigma et les ART avec le projet d'origine si vous créez des détections/tests pour un TTP qui n'en possède pas.

Fonctionnalités

  • SigmaHound : Récupère et traite les règles de détection Sigma
  • ARTHound : Récupère et traite les tests Atomic Red Team (ART)
  • Définir les icônes : Personnalise les icônes BloodHound pour les acteurs de la menace et les techniques
  • Requêtes enregistrées : Importe les requêtes Cypher groupées dans BloodHound via UL-Cyphers.py ou --setup
  • Téléversement par lot : Téléverse les graphes JSON générés vers BloodHound avec déclenchement automatique de l'ingestion
  • Téléversement uniquement : Si vous avez déjà les fichiers mais souhaitez les importer dans une nouvelle instance BloodHound ou avez vidé la base de données
  • Vider la base de données : Réinitialise une instance BloodHound via l'API avant une nouvelle importation
  • Assistant de configuration : Un seul drapeau pour exécuter les mises à jour d'icônes et l'importation des requêtes enregistrées ensemble
  • Un playbook lié à 2 TTP : Ceci est juste pour vous montrer à quoi cela ressemblerait si vous mappiez vos playbooks d'intervention (IR) à ATT&CK et ingériez les données
  • Interface CLI : Arguments de ligne de commande simples pour exécuter des composants individuels ou tous les composants

Prérequis

  • Python 3.8+
  • Serveur BloodHound en cours d'exécution (par défaut : http://127.0.0.1:8080)

Optionnel

  • Identifiants API BloodHound (ID de jeton et clé de jeton)
    • Si vous ne fournissez pas de clés API, BloodSOCer ne pourra pas
      • Téléverser les données générées (mais vous pouvez les téléverser manuellement dans l'interface)
      • Créer les Cypher personnalisés pour ce projet (mais vous pouvez les téléverser manuellement dans l'interface)
      • Définir des icônes personnalisées

Installation

  1. Clonez le dépôt :

    root@kitploit:~
    git clone https://github.com/yourusername/BloodSOCer.git
    cd BloodSOCer
    
  2. Installez les dépendances :

    root@kitploit:~
    pip3 install -r requirements.txt
    
  3. Configurez les identifiants API dans BloodSOCer.py :

    root@kitploit:~
    apikey = "your-api-key-here"
    apiid = "your-api-id-here"
    

Utilisation

Juste YOLO

root@kitploit:~
python3 BloodSOCer.py

Afficher l'aide

root@kitploit:~
python3 BloodSOCer.py -h

Exécuter les hounds individuellement

root@kitploit:~
python3 BloodSOCer.py --mitre, -m
python3 BloodSOCer.py --sigma, -s
python3 BloodSOCer.py --art, -r

Exécuter Définir les icônes

root@kitploit:~
python3 BloodSOCer.py --define-icons, -di

Exécuter la configuration (icônes + cyphers)

root@kitploit:~
python3 BloodSOCer.py --setup, -st

Téléverser uniquement les fichiers

root@kitploit:~
python3 BloodSOCer.py --upload-only, -ul

Exécuter tous les hounds et téléverser les données

root@kitploit:~
python3 BloodSOCer.py --all, -a

Combiner plusieurs opérations

root@kitploit:~
python3 BloodSOCer.py --mitre --sigma --define-icons

Supprimer toutes les données de la base de données

root@kitploit:~
python3 BloodSOCer.py --clear-db

REMARQUE : Pour --define-icons et --upload-only, une clé API et un secret API doivent être définis dans BloodSOCer.py

Configuration

Modifiez BloodSOCer.py pour personnaliser :

  • apikey : Votre clé API BloodHound
  • apiid : Votre ID API BloodHound
  • url : URL du serveur BloodHound (par défaut : http://127.0.0.1:8080)

Structure des fichiers

root@kitploit:~
BloodSOCer/
├── BloodSOCer.py              # Point d'entrée principal
├── MitreHound.py              # Récupérateur de données MITRE ATT&CK
├── ARTHound.py                # Récupérateur de données Atomic Red Team
├── SigmaHound.py              # Récupérateur de données des règles Sigma
├── Define-Icons.py            # Personnalisateur d'icônes BloodHound
├── UL-Cyphers.py              # Téléverse les Cypher personnalisés pour aider à interroger les données ingérées
├── Cyphers/                   # Requêtes enregistrées (Cypher) JSON
├── ressources/                # Images/diagrammes (graphe Arrows, logo)
├── README.md                  # Ce fichier
├── requirements.txt           # Dépendances Python
└── output/                    # Fichiers *_graph.json générés

Nouveaux nœuds et arêtes

Nœuds

Ce projet ajoute les types de nœuds suivants

  • TA_Group
    • Groupe d'acteurs de la menace
  • Tactic
    • Tactic Mitre ATT&CK telle que « Command and Control »
  • Technique
    • Technique Mitre ATT&CK telle que « OS Credential Dumping »
    • Sous-technique Mitre ATT&CK telle que « OS Credential Dumping: LSA Secrets »
  • Tool
    • Logiciel utilisé pour effectuer une attaque tel que « UACMe »
  • Rule
    • Règles Sigma pour détecter une technique ou une sous-technique
  • ART
    • Atomic Red Team - Tests qui exploitent une technique ou une sous-technique spécifique
  • Playbook
    • Playbook de réponse à incident, tel que IRP qui peut être utilisé lorsqu'une technique est utilisée avec succès par un adversaire
    • Remarque : Parce que IRP n'a pas de correspondance avec le framework Mitre ATT&CK, ceux-ci ne sont actuellement pas implémentés

Arêtes

Ce projet ajoute les arêtes/relations suivantes

  • Exploits
    • Un Outil Exploite une (sous-)technique
  • Uses
    • Un Acteur de la menace Utilise un Outil ou une (sous-)technique
  • PartOf
    • Une Technique fait PartieDe une Tactic
  • SubTechniqueOf
    • Une Sous-technique est SousTechniqueDe une Technique
  • DetectedBy
    • Une (sous-)technique est DétectéePar une Règle
  • TestedBy
    • Une (sous-)technique est TestéePar un ART
  • InvestigateWith
    • Une (sous-)technique est InvestigéeAvec un Playbook

Graphe conceptuel

BloodSOCer Arrows Graph

Pour télécharger le fichier json de ce graphe Arrows.app, cliquez ici

Exemple de sortie

Détections pour FIN7 utilisant Mimikatz FIN7 Mimikatz Detections

Tactiques utilisées par FIN7 Playbooks Query

Détection et test pour l'activité de FIN7 Playbooks Query

Playbooks pour enquêter sur l'activité de FIN7 et de Scattered Spider Playbooks Query

Remarques

  • L'ingestion des données téléversées peut prendre quelques minutes selon la taille des fichiers, la charge du serveur et les ressources
  • Assurez-vous que les identifiants API BloodHound sont valides avant d'exécuter le programme
  • Tous les fichiers de graphes JSON doivent être présents dans le répertoire courant avant le téléversement
  • Les icônes personnalisées définies dans Define-Icons.py seront appliquées à l'interface BloodHound
  • Cet outil n'ingère actuellement aucun playbook

Licence

Apache 2.0

Remerciements

Lorsque j'ai entendu parler pour la première fois d'OpenGraph, j'ai immédiatement pensé que ce serait un excellent moyen d'ingérer le framework Mitre ATT&CK et d'utiliser BloodHound pour le visualiser. Olaf Hartong l'a fait il y a quelques années voir son blog, apparemment inspiré par SadProcessor qui est maintenant un de mes collègues. La boucle est bouclée.

Contribution

Les demandes de tirage (pull requests) et les problèmes (issues) sont les bienvenus.

Télécharger l’outil