¿Hay alguna manera de hacer que esta inyección SQL funcione con la autenticación PHP? [cerrado]

-4
//the $pw parameter uses md5

$qry="Select * from accts where un='$un' and pw='$pw' ";
$data=mysql_query($qry);
$row=mysql_fetch_assoc($data);

If(!empty($row)){
  If($row["un"]==$un && $row["pw"]==$pw){
    //session and redirect
   }
}else{
Echo "The username and/or password is incorrect";
}
    
pregunta ValidJohnson 09.11.2016 - 13:53
fuente

1 respuesta

1

No solo debe ver si puede romper el esquema de autenticación. El principal problema con su consulta es que puede inyectar una consulta y hacer que se ejecute. Esto le permite básicamente enumerar la base de datos con técnicas de inyección ciega de SQL. En última instancia, esto le permitirá leer el hash de la contraseña, lo que le permitirá recuperar la contraseña original ...

Puede encontrar

ejemplos de cómo puede hacer esto aquí .

Está utilizando el tiempo como un llamado "canal encubierto", como una comunicación fuera de los canales regulares.

    
respondido por el kaidentity 09.11.2016 - 14:24
fuente

Lea otras preguntas en las etiquetas