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
Stormspotter — Outil Red Team Azure pour la cartographie des objets Azure et Azure Active Directory. | Kitploit
Outils/GitHubGitHub/azure/stormspotter
ReconnaissanceCollecte d'InformationsTests d'IntrusionSécurité CloudRed Teaming
GitHubazure/stormspotter

Stormspotter

Outil Red Team Azure pour la cartographie des objets Azure et Azure Active Directory.

Voir le dépôt
1.7k212il y a 4 ansVé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


Stormspotter crée un « graphe d’attaque » des ressources d’un abonnement Azure. Il permet aux équipes rouges et aux testeurs d’intrusion de visualiser la surface d’attaque et les opportunités de pivotement au sein d’un locataire, et renforce les défenseurs pour s’orienter rapidement et prioriser le travail de réponse aux incidents.


Installation

Avec Docker

La plupart des utilisateurs trouveront plus facile d’installer Stormspotter via Docker. C’est la méthode recommandée.

root@kitploit:~
git clone https://github.com/Azure/Stormspotter
docker-compose up

Le fichier docker-compose va créer trois conteneurs :

  • Stormspotter Frontend
  • Stormspotter Backend
  • Neo4j v4

Par défaut, le conteneur Stormspotter expose l’interface utilisateur sur le port 9091. Le conteneur neo4j expose neo4j sur les ports 7474 (HTTP) et 7687 (Bolt). La configuration par défaut de Neo4j n’active pas SSL, vous pouvez donc interagir directement avec l’interface neo4j sur le port 7474.

Remarque : Actuellement, Stormspotter ne supporte que l’exécution de ces conteneurs localement. Toute tentative de téléversement vers le frontend hébergé à distance échouera, mais ce comportement devrait changer à l’avenir.

Les identifiants par défaut pour neo4j sont : neo4j/password. Vous pouvez les modifier dans le fichier docker-compose via la variable d’environnement NEO4JAUTH.

Sans Docker

Si vous choisissez d’exécuter Stormspotter sans Docker, vous devez avoir Python 3.8, NodeJS/npm et Neo4j installés. Vous pouvez également obtenir les dernières versions de Stormspotter ici.

Backend

Le backend qui gère l’analyse des données dans Neo4j est construit avec FastAPI. Si vous n’envisagez pas de téléverser du nouveau contenu pour la base de données, vous n’aurez peut-être pas besoin d’exécuter le backend du tout. Le backend est configuré pour fonctionner sur le port 9090. Vous pouvez modifier cela en changeant le numéro de port à la ligne 5 de app.py. Si vous le faites, vous devez également changer le port dans le composant Q-Uploader dans le Composant DatabaseView afin que les téléversements depuis le frontend soient envoyés vers le bon port où se trouve le backend.

root@kitploit:~
cd backend
python3 ssbackend.pyz

Web App

L’application web est développée avec Vue et le Framework Quasar. L’application monopage (SPA) a été construite pour vous et se trouve dans frontend/dist/spa. Pour servir ce répertoire :

root@kitploit:~
npm install -g @quasar/cli
cd frontend/dist/spa
quasar serve -p 9091 --history

Vous pouvez ensuite visiter http://localhost:9091 dans votre navigateur.

Exécution de Stormspotter

Stormcollector

Stormcollector est la partie de Stormspotter qui permet d’énumérer les abonnements auxquels les identifiants fournis ont accès. La méthode RECOMMANDÉE pour utiliser Stormcollector est d’exécuter le package sscollector.pyz, disponible dans le fichier de version pour votre système d’exploitation. Ce PYZ a été créé avec Shiv et contient tous les packages déjà compressés ! Les dépendances s’extrairont dans un dossier .shiv dans le répertoire personnel de l’utilisateur.

root@kitploit:~
cd stormcollector
python3 sscollector.pyz -h

Si pour une raison quelconque vous ne souhaitez pas utiliser le package fourni, vous pouvez installer les packages requis avec pip ou pipenv. Avec cette approche, il est hautement recommandé d’installer Stormcollector dans un environnement virtuel pour éviter les conflits de packages. Si vous rencontrez des difficultés pour gérer vos environnements virtuels, vous devriez utiliser la méthode recommandée ci-dessus.

root@kitploit:~
cd stormcollector
python3 -m pip install pipenv
pipenv install .
python3 ./sscollector.py

Types de connexion actuellement supportés :

  • Azure CLI (doit utiliser az login d’abord)
  • Service Principal Client ID/Secret

Vous pouvez consulter toutes les options offertes par Stormcollector en utilisant l’option -h comme indiqué ci-dessus. Les utilisations les plus basiques de Stormcollector sont :

root@kitploit:~
python3 sscollector.pyz cli
python3 sscollector.pyz spn -t <tenant> -c <clientID> -s <clientSecret>

Options communes pour tous les types d’authentification

  • --cloud : Spécifier un autre cloud Azure (GERMAN, CHINA, USGOV)
  • --config : Spécifier une configuration personnalisée pour les environnements cloud
  • --azure : Énumérer uniquement les ressources Azure Resource Manager
  • --aad : Énumérer uniquement Azure Active Directory
  • --subs : Abonnements que vous souhaitez analyser. Plusieurs abonnements peuvent être ajoutés sous forme de liste séparée par des espaces.
  • --nosubs : Abonnements que vous souhaitez exclure. Plusieurs abonnements peuvent être exclus sous forme de liste séparée par des espaces.
  • --json : Convertir la sortie SQLite en JSON (ATTENTION : STORMSPOTTER ANALYSE UNIQUEMENT LE FORMAT SQLITE )
    • Cette option est utile si vous souhaitez analyser la sortie pour d’autres raisons que Stormspotter.
  • --ssl-cert : Spécifier un certificat SSL pour que Stormcollector l’utilise pour les requêtes. Ce n’est pas une option courante.
  • --backfill : Effectuer l’énumération AAD uniquement pour les ID d’objet associés à l’énumération RBAC. Applicable uniquement lorsque --azure est spécifié.

Téléversement des résultats

Une fois que vous avez démarré l’interface utilisateur, vous verrez une section dans l’onglet base de données intitulée « Stormcollector Upload ». Ajoutez votre fichier à ce téléverseur et le traitement commencera. Au fur et à mesure que les résultats sont traités, vous pouvez consulter les logs du backend pour voir la progression, et les résultats devraient également apparaître dans le même onglet Database View.

Notes

  • Stormspotter étant actuellement en version bêta, tous les types de ressources n’ont pas été implémentés pour l’affichage. Vous pouvez voir des étiquettes avec des icônes manquantes et/ou simplement afficher les champs « name » et « id ». Avec le temps, davantage de ressources seront correctement implémentées.

Problèmes connus

  • Vérifiez les problèmes connus avant d’en soumettre un.

Captures d’écran

  • Afficher les autorisations sur un KeyVault Screenshot1

  • Afficher les membres d’un rôle Azure AD Screenshot2

  • Afficher les relations entrantes et sortantes Screenshot3

Contribution

Ce projet accepte les contributions et suggestions. La plupart des contributions nécessitent que vous acceptiez un Contrat de Licence de Contributeur (CLA) déclarant que vous avez le droit de, et que vous nous accordez effectivement, les droits d’utiliser votre contribution. Pour plus de détails, visitez https://cla.opensource.microsoft.com.

Lorsque vous soumettez une pull request, un robot CLA déterminera automatiquement si vous devez fournir un CLA et décorera la PR de manière appropriée (par exemple, vérification de l’état, commentaire). Suivez simplement les instructions fournies par le robot. Vous n’aurez besoin de le faire qu’une seule fois sur tous les dépôts utilisant notre CLA.

Ce projet a adopté le Code de conduite open source Microsoft. Pour plus d’informations, consultez la FAQ sur le code de conduite ou contactez [email protected] pour toute question ou commentaire supplémentaire.

Télécharger l’outil