Nuestro Code Vulnerable seria algo como este:
<?php
$user = $_POST['username'];
$pass = md5($_POST['password']);
$result = mysql_query("SELECT * FROM " . $tabla . "login WHERE username = '$user' AND password = '$pass'")
or die("<p><i>" . mysql_error() . "</i></p>\n");
?>
Ahora el codigo esta chequeando mal el user y la pass, no está bien puesto el codigo... entonces si nosotros pusieramos en el login:
username : admin ' or ' 1=1
password : mipassnoesesta
lo que hriamos nosotros sería transformar la petición en básicamente esto:
$result = mysql_query("SELECT * FROM " . $tabla . "login WHERE username = 'admin' ' or ' 1=1 AND password = 'mipassnoesesta'")
Ahora nostros solo tendriamos que poner un usuario que exista y entrariamos como tal... genial no?
para aquellos que solo sabian que si ponian la inyeccion entraban ya saben por que es y bueno para evitar esto pues podriamos usar los mismo que en el anterior tutorial de como obtener archivos del servidor con sql injection
esas tecnicas pueden usar para evitar esto...
Espero les haya gustado y asi pueden evitar que les pase esto a las empresas que los contrate...
Saludos
Dr.White
Tienes razon, que facil es vulnerar la seguridad si no se toman las medidas respectivas, para esto se usan las magicquotes no?
ResponderEliminaro tambien disponemos de las dos funciones de php.
Esta muy bueno este blog, material que me es de gran utilidad.
Saludos