SQL Injection: i 5 migliori tool per individuarle (versione per ...
http://sicurezza.html.it/articoli/stampa/3882/sql-injection-i-5-...
SQL Injection: i 5 migliori tool per individuarle
SQL Injection è la principale tecnica sfruttata per colpire una applicazione web basata su un database
di tipo SQL, potrebbe consentire ad un malintenzionato di manipolare in maniera opportuna i dati sui
quali opera un sito Internet o un'applicazione riuscendo talvolta ad accedere ai dati sensibili. Un'analisi
preventiva con software adeguati, potrebbe scongiurare pericolosi attacchi dall'esterno.
L'exploit si basa su una scrittura "imprecisa" del codice da parte dello sviluppatore, sono soggette ad
attacchi di tipo SQL Injection le principali applicazioni web non correttamente verificate da parte dello
sviluppatore. In questo articolo non ci soffermeremo sulle basi della tecnica ma andremo ad analizzare i
principali software Open Source in grado di individuare una falla di SQL Injection.
SQLMap
SQLMap
(clic per ingrandire)
(http://html.it/articoli
/3882/sqlmap.jpg)
SQLMap (http://sqlmap.sourceforge.net/) è un software in grado di automatizzare il processo di
individuazione e di sfruttamento delle falle di SQL Injection, sviluppato in Python e Open Source inoltre
ha la peculiarità di essere multi piattaforma, richiede l'interprete Python per la corretta esecuzione.
Supporta i principali server SQL tra i quali MySQL, Oracle, PostgreSQL, Microsoft SQL Server,
Microsoft Access, SQLite, Firebird, Sybase e SAP MaxDB.
SQLMap offre risorse veramente infinite e il suo uso è alquanto sofisticato, in questo articolo ci
concentreremo sui comandi basi, lasciando a voi la facoltà di approfondire l'utilizzo attraverso il manuale
molto completo disponibile sul sito ufficiale. Un primo approccio al software può essere ottenuto
digitando il comando "python sqlmap.py -h" da riga di comando nel proprio sistema operativo, questo
comando restituisce l'help di SQLMap contenente tutte le opzioni disponibili per l'uso del programma.
Per iniziare ad analizzare un applicativo web è possibile digitare da riga di comando la seguente
istruzione, specificando dopo l'opzione "-u" la risorsa che vogliamo analizzare:
1 di 5
04/04/12 00:00
SQL Injection: i 5 migliori tool per individuarle (versione per ...
http://sicurezza.html.it/articoli/stampa/3882/sql-injection-i-5-...
python sqlmap.py -u http://www.applicativoweb.com/mysql/risorsa.php?id=1
Attraverso i cinque livelli di output è possibile visualizzare lo stato dell'analisi, basterà indicare
attraverso il comando verbosity il livello preferito (es. -v 1):
python sqlmap.py -u http://www.applicativoweb.com/mysql/risorsa.php?id=1 -v 1
È inoltre possibile analizzare un intero sito internet andando alla ricerca di tutte le possibili vulnerabilità,
questa funzione è possibile grazie all'integrazione con il motore di ricerca Google attraverso il seguente
comando:
python sqlmap.py -g "site:applicativoweb.com ext:php"
SQLMap procederà ad analizzare i primi 100 risultati riportati da Google relativi al dominio specificato,
alla ricerca di risultati contenenti richieste di tipo GET, per poter procedere alla verifica di possibili
vulnerabilità. Infine è possibile personalizzare il livello di test attraverso l'opzione "--level=X" dove
specificheremo 1 per un test rapido fino al valore 5 per un test più accurato.
Sqlninja
Sqlninja (http://sqlninja.sourceforge.net/) è un software nato in Italia grazie all'idea di Alberto Revelli in
grado di sferrare attacchi di tipo SQL Injection a sistemi basati su Microsoft SQL Server. Il tool
permette di effettuare un attacco forza bruta per determinare la password di amministratore di
sistema, un escalation per aggiungere un utente con i medesimi privilegi dell'amministratore, un
fingerprint del server, un port scanning per determinare eventuali porte di sistema aperte e un
tunneling attraverso la porta DNS oppure ICMP quando tutte le porte TCP/UDP sono chiuse ma il server
risolve i nomi di host esterni.
Sqlninja
(clic per ingrandire)
(http://html.it/articoli
/3882/sqlninja.jpg)
Per iniziare ad utilizzare l'utility è necessario ottenere l'esatto HTTP Request dell'applicativo web che
2 di 5
04/04/12 00:00
SQL Injection: i 5 migliori tool per individuarle (versione per ...
http://sicurezza.html.it/articoli/stampa/3882/sql-injection-i-5-...
vogliamo analizzare, per ottenerlo possiamo utilizzare un semplice Proxy come Burp Suite o Owasp Zed
Attack Proxy. Http Request dovrà essere riportato integralmente nel file di configurazione di sqlninja
denominato sqlninja.conf senza dimenticarsi i marcatori "--httprequest_start--" e
"--httprequest_end--" prima e dopo la nostra stringa.
Inizieremo ad effettuare un primo test della configurazione precedentemente impostata digitando il
comando:
sqlninja -mode test
Se l'esito è positivo possiamo procedere ad effettuare un attacco tra le varie modalità proposte
(fingerprint bruteforce, escalation, ecc ecc) oppure dovremo verificare il contenuto del file di
configurazione.
Havij
Havij
(clic per ingrandire)
(http://html.it/articoli/3882/havij.jpg)
Havij (http://itsecteam.com/en/projects/project1.htm) è uno dei principali software dotati di una veste
grafica (GUI) compatibile con i sistemi operativi Windows e distribuita nella licenza gratuita o
commerciale, nella prima vengono imposte alcune limitazioni come l'impossibilità di effettuare un Blind
MsSQL oppure l'impossibilità di verificare un database Oracle e tante altre piccole restrizioni.
L'utilizzo di questo software è alla portata di tutti grazie al confortevole supporto grafico basterà infatti
digitare nel campo "target" il sito Internet dell'applicativo web da verificare selezionare se le richieste
dovranno essere inviate con il metodo GET o POST e avviare l'analisi semplicemente cliccando sul
pulsante "Analyze"; nel riquadro Status avremo a disposizione tutte le informazioni sull'avanzamento
della procedura di attacco.
W3AF
W3AF (http://w3af.sourceforge.net/) è un ottimo web scanner Open Source in grado di individuale
3 di 5
04/04/12 00:00
SQL Injection: i 5 migliori tool per individuarle (versione per ...
http://sicurezza.html.it/articoli/stampa/3882/sql-injection-i-5-...
diverse vulnerabilità in un applicazione web, tra queste vi è anche l'individuazione di falle di tipo SQL
Injection. W3af è software scritto in python e compatibile sia per sistemi Linux, Window e Mac e gode di
un'ottima interfaccia grafica ma per i più nostalgici è possibile usarlo anche da riga di comando.
W3AF
(clic per ingrandire)
(http://html.it/articoli
/3882/w3af.jpg)
All'interno de software vi sono diverse categorie le quali rendono più comprensibile la distinzione delle
vulnerabilità, nel nostro caso dovremo selezionare l'opzione SQLi all'interno della categoria "Audit" una
volta impostato il sito target sarà possibile avviare la scansione. Per chi preferisce effettuare una
scansione da riga di comando potrà richiamare w3af digitando il comando "w3af_console".
SQLiX
SQLiX
(clic per ingrandire)
4 di 5
04/04/12 00:00
SQL Injection: i 5 migliori tool per individuarle (versione per ...
http://sicurezza.html.it/articoli/stampa/3882/sql-injection-i-5-...
(http://html.it/articoli
/3882/sqlix.jpg)
SQLiX (https://www.owasp.org/index.php/Category:OWASP_SQLiX_Project) è un software sviluppato
dalla OWASP scritto in Perl dedicato alla ricerca dei vettori per sferrare un attacco di tipo SQL Injection.
La facilità di utilizzo di questa utility è veramente estrema basterà infatti digitare dalla shell il seguente
comando per iniziare ad effettuare un test sull'applicativo web prescelto:
perl SQLiX.pl -url http://www.applicativoweb.com/mysql/risorsa.php?id=1
SQLix permette anche di personalizzare la scansione selezionando quale metodo di iniezione preferiamo
attraverso il comando -method, per qualsiasi altro dubbio basterà lanciare il comando -help per
visualizzare a monitor tutte le istruzioni e loro specifiche.
Versione originale: http://sicurezza.html.it/articoli/leggi/3882/sql-injection-i-5-migliori-tool-perindividuarle/
© 1997-2006 HTML.it
La vendita, il noleggio, il prestito e la diffusione del contenuto di questa pagina sono vietate, tranne nei casi specificati nella
pagina http://www.html.it/info/note-legali.php
5 di 5
04/04/12 00:00
Scarica

SQL Injection: i 5 migliori tool per individuarle