Perchè non è possibile eseguire l'iniezione SQL (HIGH Level) in questo esempio nell'app Web dannoso vulnerabile?

2
$query = " $sql = select * from users where id = '$id' " 

Non $id=3' OR '1'='1 interromperà la query? Il dubbio è sorto perché qualcuno ha affermato che non può essere rotto.

    
posta wanttomasterpython 09.04.2014 - 14:31
fonte

1 risposta

2

L'alto livello è pensato per essere l'implementazione sicura e dovrebbe essere indistruttibile.

Guardando il codice sorgente puoi vedere che c'è verifica che $id sia un numero.

if (is_numeric($id)){

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

Pertanto non è possibile che il parametro id venga modificato in qualcosa che interromperà il parametro dal contesto del valore dati e nel contesto della query.

    
risposta data 16.04.2014 - 15:58
fonte

Leggi altre domande sui tag