
Sitadel v1.5.1
Scanner di sicurezza per applicazioni web
Sitadel - Web Application Security Scanner
_ _ _ _____ _ _ _
| |_| |_| | / _____|_) _ | | | |
| | ( (____ _ _| |_ _____ __| |_____| |
| _ | \____ \| (_ _|____ |/ _ | ___ | |
| |_| | _____) ) | | |_/ ___ ( (_| | ____| |
| | (______/|_| \__)_____|\____|_____)\_)
Sitadel è sostanzialmente un aggiornamento di WAScan che lo rende compatibile con python >= 3.11 Offre maggiore flessibilità per scrivere nuovi moduli e implementare nuove funzionalità:
- Rilevamento del framework frontend
- Scoperta dei form HTML con injection di parametri POST/body
- Rilevamento della Content Delivery Network
- Definizione del Livello di Rischio per consentire le scansioni
- Sistema di plugin
- Immagine Docker disponibile per la build e l'esecuzione
Indice
Avviso sui requisiti
Questo progetto supporta python >= 3.11 (le versioni più vecchie, a fine vita, non sono più supportate). Non ci sarà alcun backport a 2.7
Installazione
git clone https://github.com/shenril/Sitadel.git
cd Sitadel
pip3 install .
# run via the installed console command...
sitadel --help
# ...or directly from the checkout
python -m sitadel --help
Funzionalità
-
Fingerprints
- Server
- Web Frameworks (CakePHP,CherryPy,...)
- Frontend Frameworks (AngularJS,MeteorJS,VueJS,...)
- Web Application Firewall (Waf)
- Content Management System (CMS)
- Sistema Operativo (Linux,Unix,..)
- Linguaggio (PHP,Ruby,...)
- Sicurezza dei Cookie
- Audit degli Header di Sicurezza
- Content Delivery Networks (CDN)
-
Attacchi:
-
Bruteforce
- Interfaccia di Amministrazione
- Backdoor Comuni
- Directory di Backup Comuni
- File di Backup Comuni
- Directory Comuni
- File Comuni
- File di Log
-
Injection
- HTML Injection
- SQL Injection
- LDAP Injection
- XPath Injection
- Cross Site Scripting (XSS)
- Remote File Inclusion (RFI)
- PHP Code Injection
- XML External Entity (XXE)
- Server-Side Template Injection (SSTI)
- Path Traversal / LFI
-
Altro
- Metodi HTTP Allow
- Oggetto HTML
- Indice Multiplo
- Percorsi Robots
- Web Dav
- Cross Site Tracing (XST)
- PHPINFO
- .Listing
- Scoperta WebSocket e CSWSH
- Misconfigurazione CORS
- Open Redirect
- Server-Side Request Forgery (SSRF)
- File Sensibili Esposti
- Perdita di Segreti nelle Risposte
-
Vulnerabilità
- ShellShock
- Anonymous Cipher (CVE-2007-1858)
- Crime (SPDY) (CVE-2012-4929)
- Struts-Shock
-
Utilizzo
sitadel [-h] [-r {0,1,2}] [-ua USER_AGENT] [--random-agent] [--redirect]
[--no-redirect] [-t TIMEOUT] [-c COOKIE] [-p PROXY]
[-f FINGERPRINT [MODULE ...]] [-a ATTACK [MODULE ...]]
[--config CONFIG] [-v] [--version]
TARGET_URL
| ARGOMENTO | DESCRIZIONE |
|---|---|
| -h, --help | Mostra la guida |
| -r, --risk {0,1,2} | Decide il livello di rischio con cui vuoi che Sitadel venga eseguito (alcuni attacchi non verranno eseguiti) |
| -ua, --user-agent | User agent utilizzato per la richiesta HTTP degli attacchi |
| --random-agent | Usa uno User-Agent casuale per ogni richiesta di scansione |
| --redirect | Indica a Sitadel di seguire la richiesta 302 per il reindirizzamento della pagina |
| --no-redirect | Indica a Sitadel di NON seguire la richiesta 302 per il reindirizzamento della pagina |
| -t, --timeout | Specifica il timeout per le richieste HTTP al sito web |
| -c, --cookie | Consente di specificare il cookie da inviare con le richieste di attacco |
| -p, --proxy | Consente di specificare un proxy per eseguire le richieste HTTP |
| -f, --fingerprint | Specifica i moduli fingerprint da attivare per scansionare il sito web {cdn,cms,framework,frontend,header,lang,server,system,waf} |
| -a, --attack | Specifica i moduli di attacco da attivare per scansionare il sito web {bruteforce, injection, vulns, other} |
| -c, --config | Specifica il file di configurazione per la scansione di Sitadel, quello predefinito è in config/config.yml |
| -v, --verbosity | Aumenta la verbosità predefinita dei log, ad esempio: -v , -vv, -vvv |
| --version | Mostra la versione di Sitadel |
Elenco dei moduli
| FINGERPRINT | DESCRIZIONE DEL MODULO |
|---|---|
| cdn | Prova a indovinare se il target utilizza una Content Delivery Network (fastly, akamai,cloudflare...) |
| cms | Prova a indovinare se il target utilizza un Content Management System (drupal,wordpress,magento...) |
| framework | Prova a indovinare se il target utilizza un framework backend (cakephp, rails, symfony...) |
| frontend | Prova a indovinare se il target utilizza un framework frontend (angularjs, jquery, vuejs...) |
| header | Ispeziona gli header scambiati con il target |
| lang | Prova a indovinare il linguaggio server utilizzato dal target (asp, python, php...) |
| server | Prova a indovinare la tecnologia server utilizzata dal target (nginx,apache...) |
| system | Prova a indovinare il Sistema Operativo utilizzato dal target (linux,windows...) |
| waf | Prova a indovinare se il target utilizza un Web Application Firewall (barracuda, bigip,paloalto...) |
| ATTACCO | DESCRIZIONE DEL MODULO |
|---|---|
| bruteforce | Prova a forzare la posizione di molteplici file (file di backup, console di amministrazione...) |
| injection | Prova a eseguire injection su vari linguaggi (SQL,html,ldap, javascript...) |
| vulns | Prova a testare alcune vulnerabilità note (crime,shellshock) |
| other | Prova a sondare varie risorse interessanti (DAV, htmlobjects,phpinfo,robots.txt...) |
Esempi
Esecuzione semplice
sitadel http://website.com
Esecuzione con livello di rischio a DANGEROUS e senza seguire i reindirizzamenti
sitadel http://website.com -r 2 --no-redirect
Esecuzione di moduli specifici soltanto e verbosità completa
sitadel http://website.com -a bruteforce -f header server -v
Esecuzione con docker
docker build -t sitadel .
docker run sitadel http://example.com