di: Andrea Draghetti 03 Gennaio 2012
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 è 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:
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.
Guida SQL Injection con SqlmapScopriamo se le nostre applicazioni web sono vulnerabili alle SQL... |
Guida sicurezza applicazioni WebLe tecniche di attacco più comuni, i metodi per verificare la... |
Guida Sicurezza wirelessQuali sono i pericoli di sicurezza di una rete senza filo e quali... |
Ogni lunedì, direttamente nella tua e-mail: approfondimenti e bollettini su virus, vulnerabilità e sicurezza informatica.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200811 Giugno 2012 a Milano |
|
Nessun corso previsto |