2013-03-27 17 views
5

Sono uno studente che sta imparando lo sviluppo di mysql php &. Ho installato un laboratorio privato (VM) all'interno del mio computer per testare & per sapere come funziona sql injection. Quando le cose si complicano, uso sqlmap per sfruttare e successivamente studiare le richieste fatte alla mia app di test usando la modalità dettagliata & catturando i pacchetti tramite wireshark. Mi sono imbattuto in un piccolo problema e questo è quello di specificare il parametro in un URL per sqlmap da testare.Specificare i parametri con SQLMAP

http://localhost/vuln/test.php?feature=music&song=1 

voglio sqlmap per eseguire la scansione del parametro canzone così ho provato queste soluzioni

-u http://localhost/vuln/test.php?feature=music&song=1 --skip feature 
-u http://localhost/vuln/test.php? --data="feature=music&song=1" -p song 

provato diverse varianti con l'aggiunta e la rimozione di citazioni e segni di uguale, non ha funzionato. Ho persino provato a impostare il --risk to --level al massimo ma non riesce ancora a raccogliere l'ultimo parametro.

Sarò molto grato se un esperto può aiutarmi con questo. Grazie.

risposta

2

Ho anche questo problema. Penso che sqlmap inietti il ​​primo parametro. Se si digita:

-u http://localhost/vuln/test.php?feature=music&song=1 

sqlmap inietterà parametro 'funzione'. Per rendere iniettare parametro 'canzone' è necessario riordinare il parametro come segue:

-u http://localhost/vuln/test.php?song=1&feature=music 

Non dimenticate di aggiungere '&' tra ogni parametro. Ha funzionato per me.

11

l'opzione P può essere utilizzato nel modo seguente

-u "http://localhost/vuln/test.php?feature=music&song=1" -p song

+0

Inoltre, fare attenzione che senza le virgolette il comando non funzioni correttamente. –

2

si può semplicemente aggiungere * al valore del parametro che si desidera acquisire. Hai provato quello?

+0

Puoi fare un esempio? – damienfrancois

+0

-u http:? //localhost/vuln/test.php feature = musica & canto = 1 * se è una specie di richiesta POST -u http: //localhost/vuln/test.php --data =" feature = music & song = 1 * " – CorpusCallosum

+0

btw non è necessario utilizzare il punto interrogativo sulle richieste POST di sqlmapping. test.php è sufficiente. – CorpusCallosum

0

Ho già attivato questo tipo di problema. Puoi semplicemente saltare il parametro 'feature'. E.g -u http: // localhost/vuln/test.php? Feature = music & song = 1 --skip = feature e quindi sicuramente inizierà a testare il parametro 'song'.

0

ho notato anche che è possibile eseguire la scansione di più parametri usando questo:

-u "http://localhost/vuln/test.php?feature=music&song=1" -p 'song,feature' 

Questo esegue la scansione del parametro song, allora il parametro feature. Se sqlmap trova un parametro vulnerabile, ti chiederà se vuoi continuare con gli altri.

Problemi correlati