Okaz, disculpa por no hablerlo puesto antes, no me di cuenta.
//conectar1.php
<?php
$usuario=$_POST['user'];
$password=$_POST['pass'];
/*Conectamos*/
$conexion = mysql_connect("xxx", "xxx", "xxx");
mysql_select_db("xxx", $conexion);
/*Hacemos la consulta*/
$consulta_test = "SELECT NOMBRE, PASSWORD FROM USUARIO WHERE (NOMBRE = '".$usuario."') AND (PASSWORD = '".$password."')";
echo "$consulta_test<br>";
/*Obtenemos la respuesta*/
$respuesta_consulta = mysql_query($consulta_test, $conexion) or die(mysql_error());
/*Numero total de filas, para hacer las iteraciones de manera correcta*/
$total_filas = mysql_num_rows($respuesta_consulta);
if ($total_filas > 0) {
echo " Well Done!";
} else {
/*ERROR*/
echo " Fallaste!";
}
/* Respuesta:' OR ''='*/
?>
//conectar2.php
<?php
$us=$_POST['usuario'];
$pas=$_POST['pass'];
if($_GET['usuario'] || $_GET['pass']){
die("Hack Attempt");
}
/*Conectamos*/
$conexion = mysql_connect("xxx", "xxx", "xxx");
mysql_select_db("xxx", $conexion);
$sql="SELECT PASSWORD FROM USUARIO WHERE USUARIO.NOMBRE = '$us'";
echo "$sql<br>";
$resp = mysql_query($sql, $conexion) or die(mysql_error());
if($fila = mysql_fetch_array($resp)){
if($fila['PASSWORD']==$pas){
echo "Inicio de sesión exitoso"; // Esto fue modificado
}else{
echo "el password ".$pas." es incorrecto";
}
} //' UNION SELECT MIN(Password),2,3,4,5 FROM USUARIO WHERE NOMBRE = 'zanahoria
?>
//index.php
<html>
<head>
<title>Ejercicios de SQL Injection</title>
</head>
<body>
<br>Primer Ejercicio. De por sentado que existe un usuario llamado Marcelo.</br>
<form action="conectar1.php" method="POST" >
Nombre de usuario: <br><input type="text" name="user" align="right" /><br>
Contraseña: <br><input type="password" name="pass" align="right" /><br>
<input type="submit" value="Iniciar Sesion" />
</form>
<form action="respuesta1.txt" method="post">
Ver respuesta: <input type="submit" value="Spoilerr!"/></br>
</form>
<br>Segundo ejercicio. Unidos estamos de pie.</br>
<form action="conectar2.php" method="POST" >
Nombre de usuario: <br><input type="text" name="usuario" align="right" /><br>
Contraseña: <br><input type="password" name="pass" align="right" /><br>
<input type="submit" value="Iniciar Sesion" />
</form>
<form action="respuesta2.txt" method="post">
Ver respuesta: <input type="submit" value="Spoilerr!"/></br>
</form>
</body>
</html>
Igualmente ahora que lo pienso, lo probé en un localhost, así que no tendría que haber diferencia.