Come usare R0b0t Pirates 500 error bypass

0

Ho avuto un'iniezione valida, ma non sono riuscito a sfruttarla a causa di 500 errori, quindi mi sono guardato intorno e ho scoperto che R0b0t Pirates, un blog specializzato in strumenti come sqlmap, ha pubblicato un
500 bypass di errore , che ti dice in qualche modo di aggiungere questo alla query, senza informazioni ma un titolo :

+AND(SELECT 1)=(SELECT 0X41414141414141414141414141414141414141414141414141414141414141414141414141414141
4141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141)+

La mia domanda è come aggiungerla alla query. Lo aggiungi come prefisso, suffisso, regex?

    
posta Sanic Rider 19.01.2016 - 14:29
fonte

1 risposta

1

La sezione "Caricamento payload personalizzato" della documentazione di SQLMap spiega come aggiungere un bypass come questo. Mi sembra che tu utilizzi --suffix seguito dalla clausola AND incollata sopra.

Ecco il testo dei documenti:

Custom injection payload

Options: --prefix and --suffix

In some circumstances the vulnerable parameter is exploitable only if the user provides a specific suffix to be appended to the injection payload. Another scenario where these options come handy presents itself when the user already knows that query syntax and want to detect and exploit the SQL injection by directly providing a injection payload prefix and suffix.

Example of vulnerable source code:

$query = "SELECT * FROM users WHERE id=('" . $_GET['id'] . "') LIMIT 0, 1";

To detect and exploit this SQL injection, you can either let sqlmap detect the boundaries (as in combination of SQL payload prefix and suffix) for you during the detection phase, or provide them on your own.

For example:

$ python sqlmap.py -u "http://192.168.136.131/sqlmap/mysql/get_str_brackets.php?id=1" \
-p id --prefix "')" --suffix "AND ('abc'='abc"
[...]

This will result in all sqlmap requests to end up in a query as follows:

$query = "SELECT * FROM users WHERE id=('1') <PAYLOAD> AND ('abc'='abc') LIMIT 0, 1";

Which makes the query syntactically correct.

In this simple example, sqlmap could detect the SQL injection and exploit it without need to provide custom boundaries, but sometimes in real world application it is necessary to provide it when the injection point is within nested JOIN queries for instance.

    
risposta data 19.01.2016 - 17:44
fonte

Leggi altre domande sui tag