Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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
SteppingStones — Outil web de journalisation des activités de red team, de génération de rapports et de connaissance de la situation, avec intégration de Cobalt Strike et BloodHound. | Kitploit
Outils/GitHubGitHub/nccgroup/steppingstones
Scripting et AutomatisationCollecte d'InformationsTests d'IntrusionCommandement et ContrôleUtilitaires et FrameworksRed Teaming
GitHubnccgroup/steppingstones

SteppingStones

Outil web de journalisation des activités de red team, de génération de rapports et de connaissance de la situation, avec intégration de Cobalt Strike et BloodHound.

Voir le dépôt
2433459il y a 1 jourVérifié par Kitploit
Site web

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

Stepping Stones

Objectif

Un hub pour l'activité Red Team afin de faciliter la tenue de registres, la connaissance de la situation et le reporting. Stepping Stones fournit une interface web permettant à l'équipe de consigner son activité et de générer des extraits de rapport. L'interface est conçue pour être suffisamment rapide pour être utilisée tout au long de la mission, et pas seulement en phase de reporting.

Article de blog de la version

Installation

Stepping Stones est une application Python Django, donc pour obtenir une copie locale fonctionnelle :

  1. Installez la dernière version de Python 3 (testée avec 3.12.2 sur Windows et Linux)
  2. Placez-vous dans le répertoire racine d'une copie de ce dépôt
  3. Créez un environnement virtuel pour isoler les dépendances des autres applications : python -m venv .venv
  4. Activez l'environnement virtuel : .venv\Scripts\activate ou source .venv/bin/activate sur *nix
  5. Installez les dépendances : pip install -r requirements.txt
  6. Assurez-vous que le module de tâches de fond tiers dispose de toutes les migrations requises : python manage.py makemigrations background_task
  7. Mettez le schéma de la base de données à jour : python manage.py migrate
  8. Démarrez l'application :
    • Si vous l'exécutez sur un système Linux avec systemd, consultez le guide systemd
    • Pour les versions de développement :
      • Exécutez python manage.py runserver et python manage.py process_tasks simultanément
    • Pour les versions de production :
      • Exécutez python manage.py check --deploy pour obtenir des recommandations de durcissement, puis suivez un guide tel que : https://docs.djangoproject.com/en/6.0/howto/deployment/
  9. Visitez l'application pour configurer une tâche et un utilisateur admin : par exemple, accédez à http://127.0.0.1:8000 si vous l'exécutez en local
    • Remarque : L'utilisateur créé sera également utilisé pour l'application principale et apparaîtra comme « opérateur red team » associé aux événements consignés, choisissez donc un nom d'utilisateur adapté, par exemple « ST » ou « stephen », plutôt que « admin ». Si vous utilisez l'intégration Cobalt Strike, utiliser les mêmes noms d'utilisateur pour les deux outils facilitera l'intégration.

Intégration Cobalt Strike

  • Placez un Cobalt Strike SOUS LICENCE dans /opt/cobaltstrike ou c:\tools\cobaltstrike-dist\cobaltstrike

Sur le serveur d'équipe, ouvrez une porte dans le pare-feu pour permettre à Stepping Stones de se connecter, par ex. :

  • Sur AWS, autorisez le groupe de sécurité Stepping Stones à accéder au port 50050 du Team Server
  • Sur l'hôte, assurez-vous que le pare-feu autorise également le trafic entrant, par ex. sudo ufw allow proto tcp from 172.31.16.0/20 to any port 50050

Mise à jour de l'application

Si vous exécutez une copie locale, lorsque le code a été mis à jour dans git et que vous souhaitez profiter des nouvelles fonctionnalités :

  1. Arrêtez les deux services, par ex. avec systemd :
    • sudo service ssbot stop
    • sudo service steppingstones stop
  2. Obtenez la dernière version, par ex. depuis https://github.com/nccgroup/SteppingStones/archive/refs/heads/main.zip
  3. Décompressez le téléchargement et copiez les fichiers par-dessus le déploiement, par ex. rm -rf /tmp/stepping-stones-main; unzip /tmp/stepping-stones-main.zip && cp -R /tmp/stepping-stones-main/* /opt/steppingstones
  4. Activez l'environnement virtuel (si ce n'est pas déjà fait) depuis le répertoire steppingstones : .venv\Scripts\activate ou source .venv/bin/activate sur *nix
  5. Ajoutez les éventuelles nouvelles dépendances avec : pip install -r requirements.txt
  6. Assurez-vous que le module de tâches de fond tiers dispose de toutes les migrations requises : python manage.py makemigrations background_task
  7. Exécutez les éventuels scripts de migration pour transformer votre base de données locale vers le nouveau schéma : python manage.py migrate.
    • Si Django vous demande d'exécuter python manage.py makemigrations, arrêtez-vous et contactez les développeurs de Stepping Stones – il est important que tous les utilisateurs travaillent à partir du même ensemble de scripts de migration et ceux-ci doivent être coordonnés par les développeurs.
  8. Redémarrez les deux services, par ex. avec systemd :
    • sudo service ssbot restart
    • sudo service steppingstones restart
  9. Assurez-vous qu'il n'y a pas d'erreurs, par ex. avec systemd journalctl -u steppingstones

Repartir avec une base de données propre

Si vous utilisez la même instance pour différents travaux et souhaitez archiver les anciennes données puis repartir de zéro, vous pouvez :

  • Effectuer l'étape 1 de Mise à jour de l'application ci-dessus pour arrêter l'application
  • Renommer la base de données SQLite :
    • mv db.sqlite3 db.sqlite.OLD_CLIENT_NAME
  • Effectuer les étapes 2, 4 et 7 à 9 de Installation ci-dessus pour créer la structure de base de données correcte et accéder à l'application nouvellement configurée.

Sauvegardes

Le système utilise SQLite. Sauvegardez régulièrement le fichier db.sqlite3 situé à la racine du serveur ou via l'interface web pour protéger vos précieuses données.

Webhooks

Chacune des URL de webhook configurées recevra un petit document JSON lors des événements clés. Le document JSON a toujours la structure suivante :

{
    "type": "notification type",
    "message": "Human readable message"
}

Le champ type peut être l'une des valeurs suivantes :

  • new beacon (un beacon jamais vu auparavant s'est connecté à un Team Server surveillé)
  • respawned beacon (un beacon déjà vu s'est connecté à un Team Server surveillé)
  • returned beacon (un beacon explicitement surveillé pour une reconnexion vient de se reconnecter)

Pour consommer ces notifications, vous pouvez utiliser un scénario https://make.com, basé sur le blueprint suivant :

{"name":"Webhook to iOS","flow":[{"id":1,"module":"gateway:CustomWebHook","version":1,"parameters":{"hook":129792,"maxResults":1},"mapper":{},"metadata":{"designer":{"x":-386,"y":-129},"restore":{"parameters":{"hook":{"data":{"editable":"true"},"label":"My webhook"}}},"parameters":[{"name":"hook","type":"hook:gateway-webhook","label":"Webhook","required":true},{"name":"maxResults","type":"number","label":"Maximum number of results"}],"interface":[{"name":"type","type":"text"},{"name":"message","type":"text"}]}},{"id":8,"module":"ios:SendNotification","version":1,"parameters":{"device":171760},"mapper":{"body":"{{1.message}}","title":"{{1.type}}","action":"","priority":10,"collapsible":false},"metadata":{"designer":{"x":-31,"y":-128},"restore":{"expect":{"action":{"label":"Default"},"priority":{"label":"Deliver immediately"}},"parameters":{"device":{"data":{"editable":"undefined"},"label":"Personal Phone"}}},"parameters":[{"name":"device","type":"device:apn","label":"Device","required":true}],"expect":[{"name":"title","type":"text","label":"Title","required":true},{"name":"body","type":"text","label":"Body"},{"name":"action","type":"select","label":"Action","validate":{"enum":["open_url"]}},{"name":"priority","type":"select","label":"Priority","required":true,"validate":{"enum":[10,5]}},{"name":"collapsible","type":"boolean","label":"Collapse push notifications","required":true}]}}],"metadata":{"instant":true,"version":1,"scenario":{"roundtrips":1,"maxErrors":3,"autoCommit":true,"autoCommitTriggerLast":true,"sequential":false,"confidential":false,"dataloss":false,"dlq":false},"designer":{"orphans":[]},"zone":"eu1.make.com"}}
Télécharger l’outil