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
dc-sonar — Analyse des domaines AD pour les risques de sécurité liés aux comptes utilisateurs | Kitploit
Outils/GitHubGitHub/st1lly/dc-sonar
Cassage de Mots de PasseAnalyse des VulnérabilitésApprentissage et Éducation
GitHubst1lly/dc-sonar

dc-sonar

Analyse des domaines AD pour les risques de sécurité liés aux comptes utilisateurs

Voir le dépôtSite web
649il y a 3 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

Communauté DC Sonar

Dépôts

Le projet se compose des dépôts suivants :

  • dc-sonar-frontend
  • dc-sonar-user-layer
  • dc-sonar-workers-layer
  • ntlm-scrutinizer

Avertissement

C'est uniquement à des fins éducatives.

Évitez de l'utiliser sur le domaine Active Directory (AD) de production.

Aucun contributeur n'assume la responsabilité de son utilisation.

Médias sociaux

Découvrez notre communauté Red Team chaîne Telegram

Contenu

  1. Description
    1. Architecture
    2. Fonctionnalité
  2. Installation
    1. Docker
    2. Manuellement avec dpkg
  3. Guide de style
  4. Déploiement pour le développement
    1. Docker
    2. Manuellement avec un hôte Windows et un invité Ubuntu Server
      1. Configurer la machine virtuelle
      2. Configuration de Windows
      3. Configurer les dossiers partagés
      4. Configuration d'Ubuntu Server
      5. Couches

Description

Architecture

Pour les descriptions visuelles, ouvrez les fichiers de diagramme avec l'outil diagrams.net.

L'application se compose de :

  • Le dc-sonar-frontend est la partie frontale de l'interface utilisateur web basée sur :
    • Angular
    • Angular Material
  • Le dc-sonar-user-layer est la partie backend de l'application web basée sur :
    • Python 3.10
    • Django
    • Django ORM
    • Django REST framework
    • Celery
    • RabbitMQ
    • PostgreSQL
  • Le dc-sonar-workers-layer est la couche logique qui exécute et gère les processus d'analyse basée sur :
    • Python 3.10
    • SQLAlchemy
    • Alembic
    • APScheduler
    • RabbitMQ
    • PostgreSQL
  • Le ntlm-scrutinizer est l'exécuteur de hachages NTLM avec une API REST basée sur :
    • Python 3.10
    • FastAPI
    • hashcat
    • impacket

Fonctionnalité

La communauté DC Sonar fournit des fonctionnalités pour analyser les domaines AD pour les risques de sécurité liés aux comptes :

  • Enregistrer un domaine AD à analyser dans l'application

    register_ad

  • Voir les statuts des processus d'analyse de domaine

    domains_analyze_statuses

  • Extraire et forcer les hachages NTLM des domaines AD configurés pour lister les comptes avec des mots de passe faibles et vulnérables

    weak_passwords

  • Analyser les comptes de domaine AD pour lister ceux dont les mots de passe n'expirent jamais

    no_expired_passwords

  • Analyser les comptes de domaine AD par leurs hachages de mot de passe NTLM pour déterminer les comptes et domaines où les mots de passe se répètent

    reused_passwords

Installation

Docker

En cours ...

Manuellement avec dpkg

Il est supposé que vous avez un Ubuntu Server 22.04 propre et un compte avec le nom d'utilisateur « user ».

L'application s'installera dans /home/user/dc-sonar.

Les prochaines versions auront peut-être une installation plus flexible.

Téléchargez dc_sonar_NNNN.N.NN-N_amd64.tar.gz à partir de la dernière distribution sur le serveur.

Créez un dossier pour extraire les fichiers :

root@kitploit:~
mkdir dc_sonar_NNNN.N.NN-N_amd64

Extrayez l'archive téléchargée :

root@kitploit:~
tar -xvf dc_sonar_NNNN.N.NN-N_amd64.tar.gz -C dc_sonar_NNNN.N.NN-N_amd64

Allez dans le dossier contenant les fichiers extraits :

root@kitploit:~
cd dc_sonar_NNNN.N.NN-N_amd64/

Installer PostgreSQL :

root@kitploit:~
sudo bash install_postgresql.sh

Installer RabbitMQ :

root@kitploit:~
sudo bash install_rabbitmq.sh

Installer les dépendances :

root@kitploit:~
sudo bash install_dependencies.sh

Il demandera confirmation pour ajouter le dépôt ppa:deadsnakes/ppa. Appuyez sur Entrée.

Installer dc-sonar lui-même :

root@kitploit:~
sudo dpkg -i dc_sonar_NNNN.N.NN-N_amd64.deb

Il demandera des informations pour créer un utilisateur administrateur Django. Fournissez le nom d'utilisateur, l'email et le mot de passe.

Il demandera des informations pour créer un certificat SSL auto-signé deux fois. Fournissez les informations requises.

Ouvrir : https://localhost

Saisissez les identifiants de l'utilisateur administrateur Django définis lors du processus d'installation précédent.

Guide de style

Voir les informations dans STYLE_GUIDE.md

Déploiement pour le développement

Docker

En cours ...

Manuellement avec un hôte Windows et un invité Ubuntu Server

Dans ce cas, nous allons configurer l'environnement pour éditer le code sur l'hôte Windows tout en exécutant le code Python sur l'invité Ubuntu.

Configurer la machine virtuelle

Créez une machine virtuelle avec 2 CPU, 2048 Mo de RAM, 10 Go de SSD en utilisant l'ISO Ubuntu Server 22.04 dans VirtualBox.

Si l'installateur Ubuntu demande de mettre à jour l'installateur Ubuntu avant l'installation de la VM - acceptez.

Choisissez d'installer OpenSSH Server.

Règles de redirection de ports VirtualBox :

Configuration de Windows

Téléchargez et installez Python 3.10.5.

Créez un dossier pour le projet DC Sonar.

Allez dans le dossier du projet avec Git for Windows :

root@kitploit:~
cd '{PATH_TO_FOLDER}'

Suivez les étapes d'installation Windows pour dc-sonar-user-layer.

Suivez les étapes d'installation Windows pour dc-sonar-workers-layer.

Suivez les étapes d'installation Windows pour ntlm-scrutinizer.

Suivez les étapes d'installation Windows pour dc-sonar-frontend.

Configurer les dossiers partagés

Suivez les étapes de « Open VirtualBox » à « Reboot VM », mais ajoutez des dossiers partagés à la VM VirtualBox avec « Auto-mount », comme dans l'image ci-dessous :

vm_shared_folders

Après le redémarrage, exécutez la commande :

root@kitploit:~
sudo adduser $USER vboxsf

Déconnectez-vous et reconnectez-vous avec le compte utilisateur utilisé.

Dans le répertoire /home/user, vous pouvez utiliser les dossiers montés :

root@kitploit:~
ls -l
root@kitploit:~
Output:
total 12
drwxrwx--- 1 root vboxsf 4096 Jul 19 13:53 dc-sonar-user-layer
drwxrwx--- 1 root vboxsf 4096 Jul 19 10:11 dc-sonar-workers-layer
drwxrwx--- 1 root vboxsf 4096 Jul 19 14:25 ntlm-scrutinizer

Configuration d'Ubuntu Server

Configuration de PostgreSQL

Installez PostgreSQL sur Ubuntu 20.04 :

root@kitploit:~
sudo apt update
sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql.service

Créez le compte administrateur de la base de données :

root@kitploit:~
sudo -u postgres createuser --interactive
root@kitploit:~
Output:
Enter name of role to add: admin
Shall the new role be a superuser? (y/n) y

Créez le compte de base de données dc_sonar_workers_layer :

root@kitploit:~
sudo -u postgres createuser --interactive
root@kitploit:~
Output:
Enter name of role to add: dc_sonar_workers_layer
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n

Créez le compte de base de données dc_sonar_user_layer :

root@kitploit:~
sudo -u postgres createuser --interactive
root@kitploit:~
Output:
Enter name of role to add: dc_sonar_user_layer
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n

Créez la base de données back_workers_db :

root@kitploit:~
sudo -u postgres createdb back_workers_db

Créez la base de données web_app_db :

root@kitploit:~
sudo -u postgres createdb web_app_db

Exécutez psql :

root@kitploit:~
sudo -u postgres psql

Définissez un mot de passe pour le compte admin :

root@kitploit:~
ALTER USER admin WITH PASSWORD '{YOUR_PASSWORD}';

Définissez un mot de passe pour le compte dc_sonar_workers_layer :

root@kitploit:~
ALTER USER dc_sonar_workers_layer WITH PASSWORD '{YOUR_PASSWORD}';

Définissez un mot de passe pour le compte dc_sonar_user_layer :

root@kitploit:~
ALTER USER dc_sonar_user_layer WITH PASSWORD '{YOUR_PASSWORD}';

Attribuez les permissions CRUD pour le compte dc_sonar_workers_layer sur la base de données back_workers_db :

root@kitploit:~
\c back_workers_db
GRANT CONNECT ON DATABASE back_workers_db to dc_sonar_workers_layer;
GRANT USAGE ON SCHEMA public to dc_sonar_workers_layer;
GRANT ALL ON ALL TABLES IN SCHEMA public TO dc_sonar_workers_layer;
GRANT ALL ON ALL SEQUENCES IN SCHEMA public TO dc_sonar_workers_layer;
GRANT ALL ON ALL FUNCTIONS IN SCHEMA public TO dc_sonar_workers_layer;

Attribuez les permissions CRUD pour le compte dc_sonar_user_layer sur la base de données web_app_db :

root@kitploit:~
\c web_app_db
GRANT CONNECT ON DATABASE web_app_db to dc_sonar_user_layer;
GRANT USAGE ON SCHEMA public to dc_sonar_user_layer;
GRANT ALL ON ALL TABLES IN SCHEMA public TO dc_sonar_user_layer;
GRANT ALL ON ALL SEQUENCES IN SCHEMA public TO dc_sonar_user_layer;
GRANT ALL ON ALL FUNCTIONS IN SCHEMA public TO dc_sonar_user_layer;

Quittez psql :

root@kitploit:~
\q

Ouvrez le fichier pg_hba.conf :

root@kitploit:~
sudo nano /etc/postgresql/12/main/pg_hba.conf

Ajoutez la ligne pour la connexion afin d'autoriser la connexion depuis la machine hôte vers PostgreSQL, enregistrez les modifications et fermez le fichier :

root@kitploit:~
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
host    all             admin           0.0.0.0/0               md5

Ouvrez le fichier postgresql.conf :

root@kitploit:~
sudo nano /etc/postgresql/12/main/postgresql.conf

Modifiez les paramètres spécifiés ci-dessous, enregistrez les modifications et fermez le fichier :

root@kitploit:~
listen_addresses = 'localhost,10.0.2.15'
shared_buffers = 512MB
work_mem = 5MB
maintenance_work_mem = 100MB
effective_cache_size = 1GB

Redémarrez le service PostgreSQL :

root@kitploit:~
sudo service postgresql restart

Vérifiez l'état du service PostgreSQL :

root@kitploit:~
service postgresql status

Consultez le fichier journal si nécessaire :

root@kitploit:~
tail -f /var/log/postgresql/postgresql-12-main.log

Vous pouvez maintenant vous connecter aux bases de données créées en utilisant le compte admin et un client tel que DBeaver depuis Windows.

Configuration de RabbitMQ

Installez RabbitMQ en utilisant le script.

Activez le plugin de gestion :

root@kitploit:~
sudo rabbitmq-plugins enable rabbitmq_management

Créez le compte administrateur RabbitMQ :

root@kitploit:~
sudo rabbitmqctl add_user admin {YOUR_PASSWORD}

Associez l'utilisateur créé pour un accès complet à l'interface de gestion et à l'API HTTP :

root@kitploit:~
sudo rabbitmqctl set_user_tags admin administrator

Ouvrez l'interface de gestion sur http://localhost:15672/.

Installer Python3.10

Assurez-vous que votre système est mis à jour et que les paquets requis sont installés :

root@kitploit:~
sudo apt update && sudo apt upgrade -y

Installez la dépendance requise pour ajouter des PPA personnalisés :

root@kitploit:~
sudo apt install software-properties-common -y

Ensuite, ajoutez le PPA deadsnakes à la liste des sources du gestionnaire de paquets APT :

root@kitploit:~
sudo add-apt-repository ppa:deadsnakes/ppa

Téléchargez Python 3.10 :

root@kitploit:~
sudo apt install python3.10=3.10.5-1+focal1

Installez les dépendances :

root@kitploit:~
sudo apt install python3.10-dev=3.10.5-1+focal1 libpq-dev=12.11-0ubuntu0.20.04.1 libsasl2-dev libldap2-dev libssl-dev

Installez le module venv :

root@kitploit:~
sudo apt-get install python3.10-venv

Vérifiez la version de Python installé :

root@kitploit:~
python3.10 --version

Output:
Python 3.10.5
Hôtes

Ajoutez les adresses IP des contrôleurs de domaine dans /etc/hosts

root@kitploit:~
sudo nano /etc/hosts

Couches

Configurer l'environnement virtuel

Nous devons créer l'environnement virtuel à un niveau supérieur car VirtualBox ne permet pas de le faire dans les dossiers partagés.

Allez dans le répertoire personnel où se trouvent les dossiers partagés :

root@kitploit:~
cd /home/user

Suivez les étapes de déploiement pour dc-sonar-user-layer sur Ubuntu.

Suivez les étapes de déploiement pour dc-sonar-workers-layer sur Ubuntu.

Suivez les étapes de déploiement pour ntlm-scrutinizer sur Ubuntu.

Configuration des modules

Suivez les étapes de configuration pour dc-sonar-user-layer sur Ubuntu.

Suivez les étapes de configuration pour dc-sonar-workers-layer sur Ubuntu.

Suivez les étapes de configuration pour ntlm-scrutinizer sur Ubuntu.

Exécution

Suivez les étapes d'exécution pour ntlm-scrutinizer sur Ubuntu.

Suivez les étapes d'exécution pour dc-sonar-user-layer sur Ubuntu.

Suivez les étapes d'exécution pour dc-sonar-workers-layer sur Ubuntu.

Suivez les étapes d'exécution pour dc-sonar-frontend sur Windows.

Ouvrez https://localhost:8000/admin/ dans un navigateur sur l'hôte Windows et acceptez le certificat auto-signé.

Ouvrez https://localhost:4200/ dans le navigateur sur l'hôte Windows et connectez-vous en tant qu'utilisateur Django créé.

Télécharger l’outil
NomProtocoleIP hôtePort hôteIP invitéPort invité
SSHTCP127.0.0.1222210.0.2.1522
RabbitMQ management consoleTCP127.0.0.11567210.0.2.1515672
Django ServerTCP127.0.0.1800010.0.2.158000
NTLM ScrutinizerTCP127.0.0.1500010.0.2.155000
PostgreSQLTCP127.0.0.12543210.0.2.155432