Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
SmartScanner-Source — Scanner di vulnerabilità web realizzato con C++17 e Qt 6, con GUI, CLI, crawling configurabile e report JSON. Ricostruito per scopi educativi. | Kitploit
Strumenti/GitHubGitHub/fauxrougee/smartscanner-source
Analisi StaticaScanner di VulnerabilitàScanner di Vulnerabilità WebAnalisi delle VulnerabilitàAudit di ConfigurazioneSicurezza WebPenetration TestingRilevamento SegretiApprendimento e Formazione
Crawler
GitHubfauxrougee/smartscanner-source

SmartScanner-Source

Scanner di vulnerabilità web realizzato con C++17 e Qt 6, con GUI, CLI, crawling configurabile e report JSON. Ricostruito per scopi educativi.

Vedi Repository
121 giorno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

SmartScanner

Uno scanner di vulnerabilità web realizzato con C++17 e Qt 6, dotato di interfacce grafica e a riga di comando.

Questo repository contiene una ricostruzione di SmartScanner 3.0.0 a scopo didattico. Combina un motore di web crawling, moduli di rilevamento delle vulnerabilità e reportistica JSON.

Funzionalità

  • Web crawling: analisi di link e form, gestione di robots.txt e sitemap, profondità e ambito di scansione configurabili.
  • Test di injection: SQL, XSS, XXE, OS command injection, file inclusion e SSRF.
  • Controlli di configurazione: header HTTP, HTTPS/TLS, redirect, file esposti e directory listing.
  • Rilevamento delle tecnologie e controlli mirati per WordPress, Joomla e Drupal.
  • Rilevamento di segreti esposti e librerie JavaScript vulnerabili.
  • Autenticazione HTTP Basic, supporto proxy e stringhe User-Agent personalizzate.
  • Report JSON con livelli di gravità, evidenze HTTP, raccomandazioni e classificazioni ove disponibili.

I moduli eseguiti dipendono dalla configurazione e dalle risorse scoperte durante la scansione.

Requisiti

ComponenteVersione / dettagli
CMake3.21 o successivo
Compilatorecompatibile con C++17
Qt6.2 o successivo
Moduli QtCore, Gui, Widgets, Network, WebChannel, WebEngineWidgets, Xml
NinjaRichiesto dagli script di build inclusi per Windows

Le istruzioni seguenti sono rivolte a Windows, utilizzando i Visual Studio C++ build tools e un kit Qt MSVC compatibile. Il punto di ingresso della GUI utilizza direttamente l'API di Windows (windows.h), quindi la compilazione dell'intero progetto su Linux o macOS richiede modifiche.

Le dipendenze della GUI Qt sono richieste anche quando si configura il progetto per la CLI, poiché entrambi gli eseguibili condividono la stessa libreria.

Compilazione su Windows

Aprire un terminale PowerShell con l'ambiente di build di Visual Studio configurato, quindi spostarsi nella radice del repository. Adeguare il percorso di Qt alla propria installazione.

Utilizzo degli script inclusi

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

Il primo script compila il progetto con Ninja. Il secondo copia le librerie Qt disponibili, i plugin e le risorse WebEngine nella directory build.

Utilizzo diretto di 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 compilazione produce due eseguibili:

  • build/sms.exe: interfaccia a riga di comando.
  • build/gui.exe: interfaccia grafica.

La directory assets viene copiata automaticamente accanto agli eseguibili durante la compilazione. Conservarla insieme a essi, poiché è necessaria per caricare la configurazione predefinita.

Utilizzo

Interfaccia grafica

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

Interfaccia a riga di comando

Gli esempi seguenti utilizzano un'applicazione di test locale all'indirizzo 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

Opzioni principali

OpzioneDescrizione
-u, --url <URL>Aggiunge un target; può essere ripetuta
-f, --file <FILE>Legge i target da un file
-c, --config <FILE>Carica una configurazione JSON
-o, --output <FILE>Salva il report JSON
-d, --crawl-depth <DEPTH>Imposta la profondità di crawling: 0 disabilita il crawling, 1 recupera solo gli URL di input, e 2 o superiore segue i link
--no-discoveryEquivalente a --crawl-depth 0
--no-followEquivalente a --crawl-depth 1
-s, --scope <REGEX>Definisce l'ambito tramite un'espressione regolare
-t, --test <TESTS>Seleziona i moduli; può essere ripetuta
--auth-basic <user:pass>Imposta le credenziali HTTP Basic
--proxy <URL>Configura un proxy con porta esplicita
--proxy-auth <user:pass>Imposta le credenziali del proxy
--user-agent <STRING>Imposta uno User-Agent personalizzato
--exit-on <LEVEL>Interrompe la scansione alla soglia di gravità informational, low, medium o high

La CLI accetta proxy con schemi http:// e socks://. Lo schema socks5:// menzionato nel testo di aiuto attuale viene rifiutato dal parser.

Con --exit-on, la scansione si interrompe quando un problema raggiunge o supera la gravità richiesta. Tuttavia, l'implementazione attuale restituisce il codice di uscita 1 solo se un risultato corrisponde esattamente alla gravità richiesta.

Configurazione

Il file assets/default-scan-config.json fornisce la configurazione predefinita: moduli abilitati, timeout HTTP, richieste parallele, crawling, esclusioni, autenticazione e parametri dei form.

Per creare una configurazione personalizzata:

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

Gli identificatori dei moduli accettati da --test sono elencati sotto tests.scripts in questo file. L'opzione --test sostituisce la selezione dei moduli della configurazione.

Report

I risultati compaiono nella console man mano che la scansione procede. L'opzione --output scrive un report JSON al termine della scansione, contenente:

  • Il target, la data, lo stato, la durata, il numero di richieste e la versione.
  • I problemi rilevati e i relativi livelli di gravità.
  • Ove disponibili, i parametri interessati, le richieste/risposte HTTP, le raccomandazioni e i riferimenti.
  • Le classificazioni disponibili, tra cui CWE, OWASP, CVE e GHSA.

La directory di destinazione deve esistere già. Un file di report esistente viene sovrascritto.

Test

Gli smoke test (*_smoke.cpp) possono essere abilitati con 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

L'attuale configurazione CTest esegue tutti i test senza argomenti. Alcuni test, tra cui sms_cli_smoke, issuedb_smoke e httpheader_smoke, richiedono un argomento e devono essere eseguiti separatamente con i percorsi appropriati. L'esecuzione dell'intera suite CTest può quindi segnalare errori causati da questa configurazione.

Ad esempio, eseguire il test della CLI con:

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

I test della GUI richiedono un ambiente in grado di inizializzare Qt e WebEngine.

Struttura del progetto

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

Stato e licenza

La documentazione originale descrive questo progetto come proprietario, ricostruito a scopo didattico ("Proprietary — Reconstructed for educational purposes"). In questo repository non è incluso alcun file LICENSE separato.

Scarica lo strumento