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
SmartScanner-Source — Scanner de vulnérabilités web construit avec C++17 et Qt 6, doté d'une interface graphique, d'une CLI, d'un crawling configurable et de rapports JSON. Reconstruit à des fins éducatives. | Kitploit
Outils/GitHubGitHub/fauxrougee/smartscanner-source
Analyse StatiqueScanners de VulnérabilitésScanners de Vulnérabilités WebAnalyse des VulnérabilitésAudit de ConfigurationSécurité WebTests d'IntrusionDétection de SecretsApprentissage et Éducation
Crawler
GitHubfauxrougee/smartscanner-source

SmartScanner-Source

Scanner de vulnérabilités web construit avec C++17 et Qt 6, doté d'une interface graphique, d'une CLI, d'un crawling configurable et de rapports JSON. Reconstruit à des fins éducatives.

Voir le dépôt
14il y a 1 jourPas 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 →
Partager

SmartScanner

Un scanner de vulnérabilités web construit avec C++17 et Qt 6, doté d'interfaces graphique et en ligne de commande.

Ce dépôt contient une reconstruction de SmartScanner 3.0.0 à des fins éducatives. Il combine un moteur d'exploration web, des modules de détection de vulnérabilités et un rapport JSON.

Fonctionnalités

  • Exploration web : analyse des liens et des formulaires, gestion de robots.txt et des sitemaps, profondeur et périmètre d'exploration configurables.
  • Tests d'injection : SQL, XSS, XXE, injection de commandes OS, inclusion de fichiers et SSRF.
  • Vérifications de configuration : en-têtes HTTP, HTTPS/TLS, redirections, fichiers exposés et listage de répertoires.
  • Détection de technologies et vérifications ciblées pour WordPress, Joomla et Drupal.
  • Détection de secrets exposés et de bibliothèques JavaScript vulnérables.
  • Authentification HTTP Basic, prise en charge des proxys et chaînes User-Agent personnalisées.
  • Rapports JSON avec niveaux de gravité, preuves HTTP, recommandations et classifications lorsqu'elles sont disponibles.

Les modules exécutés dépendent de la configuration et des ressources découvertes lors de l'analyse.

Prérequis

ComposantVersion / détails
CMake3.21 ou ultérieur
CompilateurCompatible C++17
Qt6.2 ou ultérieur
Modules QtCore, Gui, Widgets, Network, WebChannel, WebEngineWidgets, Xml
NinjaRequis par les scripts de build Windows inclus

Les instructions ci-dessous ciblent Windows, en utilisant les outils de build C++ de Visual Studio et un kit Qt MSVC compatible. Le point d'entrée de l'interface graphique utilise directement l'API Windows (windows.h), donc compiler le projet complet sous Linux ou macOS nécessite des modifications.

Les dépendances de l'interface graphique Qt sont également requises lors de la configuration du projet pour la CLI, car les deux exécutables partagent la même bibliothèque.

Compilation sous Windows

Ouvrez un terminal PowerShell avec l'environnement de build Visual Studio configuré, puis naviguez jusqu'à la racine du dépôt. Ajustez le chemin Qt pour qu'il corresponde à votre installation.

Utilisation des scripts inclus

root@kitploit:~
.\build.ps1 -QtPath "C:\Qt\6.8.3\msvc2022_64" -BuildType Release
.\deploy.ps1 -QtPath "C:\Qt\6.8.3\msvc2022_64"

Le premier script compile le projet avec Ninja. Le second copie les bibliothèques Qt disponibles, les plugins et les ressources WebEngine dans le répertoire build.

Utilisation directe de CMake

root@kitploit:~
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="C:\Qt\6.8.3\msvc2022_64"
cmake --build build --parallel
.\deploy.ps1 -QtPath "C:\Qt\6.8.3\msvc2022_64"

La compilation produit deux exécutables :

  • build/sms.exe : interface en ligne de commande.
  • build/gui.exe : interface graphique.

Le répertoire assets est automatiquement copié à côté des exécutables lors de la compilation. Conservez-le avec eux, car il est nécessaire pour charger la configuration par défaut.

Utilisation

Interface graphique

root@kitploit:~
.\build\gui.exe

Interface en ligne de commande

Les exemples suivants utilisent une application de test locale à l'adresse http://localhost:8080.

root@kitploit:~
# Display help and version information
.\build\sms.exe --help
.\build\sms.exe --version

# Scan a target and save a JSON report
.\build\sms.exe -u http://localhost:8080 -o report.json

# Scan multiple targets
.\build\sms.exe -u http://localhost:8080 -u http://localhost:8081

# Load a file containing one URL per line
.\build\sms.exe -f targets.txt -o report.json

# Limit crawl depth
.\build\sms.exe -u http://localhost:8080 --crawl-depth 2

# Use HTTP Basic authentication
.\build\sms.exe -u http://localhost:8080 --auth-basic "username:password"

# Use an HTTP proxy
.\build\sms.exe -u http://localhost:8080 --proxy http://localhost:8082

# Select a test module
.\build\sms.exe -u http://localhost:8080 -t httpheaders@o=owasp,others

Options principales

OptionDescription
-u, --url <URL>Ajoute une cible ; peut être répétée
-f, --file <FILE>Lit les cibles depuis un fichier
-c, --config <FILE>Charge une configuration JSON
-o, --output <FILE>Enregistre le rapport JSON
-d, --crawl-depth <DEPTH>Définit la profondeur d'exploration : 0 désactive l'exploration, 1 ne récupère que les URL d'entrée, et 2 ou plus suit les liens
--no-discoveryÉquivalent à --crawl-depth 0
--no-followÉquivalent à --crawl-depth 1
-s, --scope <REGEX>Définit le périmètre à l'aide d'une expression régulière
-t, --test <TESTS>Sélectionne les modules ; peut être répétée
--auth-basic <user:pass>Définit les identifiants HTTP Basic
--proxy <URL>Configure un proxy avec un port explicite
--proxy-auth <user:pass>Définit les identifiants du proxy
--user-agent <STRING>Définit un User-Agent personnalisé
--exit-on <LEVEL>Arrête l'analyse au seuil de gravité informational, low, medium ou high

La CLI accepte les proxys utilisant les schémas http:// et socks://. Le schéma socks5:// mentionné dans son texte d'aide actuel est rejeté par l'analyseur.

Avec --exit-on, l'analyse s'arrête lorsqu'un problème atteint ou dépasse la gravité demandée. Cependant, l'implémentation actuelle ne renvoie le code de sortie 1 que si une découverte correspond exactement à la gravité demandée.

Configuration

Le fichier assets/default-scan-config.json fournit la configuration par défaut : modules activés, délais d'attente HTTP, requêtes parallèles, exploration, exclusions, authentification et paramètres de formulaire.

Pour créer votre propre configuration :

root@kitploit:~
Copy-Item assets/default-scan-config.json scan-config.json
# Edit scan-config.json, then start the scan
.\build\sms.exe -c scan-config.json -u http://localhost:8080 -o report.json

Les identifiants de modules acceptés par --test sont listés sous tests.scripts dans ce fichier. L'option --test remplace la sélection de modules de la configuration.

Rapports

Les découvertes apparaissent dans la console au fur et à mesure de l'analyse. L'option --output écrit un rapport JSON à la fin de l'analyse, contenant :

  • La cible, la date, le statut, la durée, le nombre de requêtes et la version.
  • Les problèmes détectés et leurs niveaux de gravité.
  • Lorsqu'ils sont disponibles, les paramètres affectés, les requêtes/réponses HTTP, les recommandations et les références.
  • Les classifications disponibles, notamment CWE, OWASP, CVE et GHSA.

Le répertoire de destination doit déjà exister. Un fichier de rapport existant est écrasé.

Tests

Les tests de fumée (*_smoke.cpp) peuvent être activés avec BUILD_TESTS :

root@kitploit:~
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="C:\Qt\6.8.3\msvc2022_64" -DBUILD_TESTS=ON
cmake --build build --parallel
ctest --test-dir build --output-on-failure

La configuration CTest actuelle exécute tous les tests sans arguments. Certains tests, notamment sms_cli_smoke, issuedb_smoke et httpheader_smoke, nécessitent un argument et doivent être exécutés séparément avec les chemins appropriés. L'exécution de la suite CTest complète peut donc signaler des échecs causés par cette configuration.

Par exemple, exécutez le test de la CLI avec :

root@kitploit:~
.\build\sms_cli_smoke.exe .\build\sms.exe

Les tests de l'interface graphique nécessitent un environnement capable d'initialiser Qt et WebEngine.

Structure du projet

root@kitploit:~
SmartScanner-Source/
├── CMakeLists.txt          # Shared library, executables, and tests
├── src/                    # Engine, crawler, detectors, CLI, and GUI
├── tests/                  # Smoke tests
├── assets/                 # Configuration, definitions, and scan resources
├── gui_assets/             # Embedded web interface: HTML, CSS, and JavaScript
├── sms_resources.qrc       # CLI Qt resources
├── gui_resources.qrc       # GUI Qt resources
├── build.bat               # Windows build script
├── build.ps1               # PowerShell build script
└── deploy.ps1              # Copies Qt dependencies for Windows

Statut et licence

La documentation originale décrit ce projet comme propriétaire, reconstruit à des fins éducatives (« Proprietary — Reconstructed for educational purposes »). Aucun fichier LICENSE distinct n'est inclus dans ce dépôt.

Télécharger l’outil