La inyección SQL consiste en la modificación de las consultas a nuestra base de datos a partir de los parametros pasados por URL al script en PHP.
¿Cómo me puede afectar a mí?
Vamos a ver un ejemplo de lo que es la inyección de código SQL. Imagina que para validar el acceso de un usuario registrado utilizas la siguiente consulta SQL:
<?
$sql = “SELECT * FROM usr WHERE id = ‘” . $id ;
$sql .= “‘ AND pwd = ‘” . $pwd . “‘” ;
?>
Cuando tengas unos valores para el nombre de usuario (id) y la contraseña del usuario (pwd) tendrás una consulta normal a la base de datos que te devolverá los datos del usuario, si es que la contraseña es correcta, cómo en el siguiente ejemplo:
SELECT * FROM usr WHERE id = ‘root’ AND pwd = ’4358′
Pero vamos a ver que pasa si intentamos modificar la consulta poniendo cómo contraseña ‘ OR ” = ‘ SEGUIR LEYENDO »