He estado toqueteando unos codigos por ahi.. y he descubrido q hay gente q realmente no se preocupa demasiado por la seguridad en los sitios web.. valla, con razon existen hackers :P
Unas de las cosas q me ha llamado la atención, son los parametros pasados a los scripts, estaban puestos dentro de las consultas SQL como si fueran de total confianza.. jua !
[php]
< ?php
mysql_query(”insert into tbl_mi_tabla set campo1=$_GET[campo1], campo2=$_GET[campo2]“);
?>
[/php]
Quiza para algunos (como el q escribio los codigos en los q yo husmeaba
) esto no supone gran riesgo.. pero si q puede serlo.. he aqui un ejemplo de un ataque de Inyeccion SQL. (del sitio de php)
[php]
< ?php
// Consultar la base de datos para verificar si hay una coincidencia de usuario
$consulta = “SELECT * FROM usuarios WHERE usuario=’{$_POST['username']}’ AND password=’{$_POST['password']}’”;
mysql_query($consulta);
// No revisamos $_POST['password'], podria ser cualquier cosa que el usuario
// quiera! Por ejemplo:
$_POST['username'] = ‘aidan’;
$_POST['password'] = “‘ OR ”=’”;
// Esto quiere decir que la consulta enviada a MySQL seria:
echo $consulta;
?>
# SELECT * FROM usuarios WHERE usuario=’aidan’ AND password=” OR ”=”
[/php]
He aqui una solucion para esto… usar mysql_real_escape_string()
[php]
< ?php
$_POST['username'] = ‘aidan’;
$_POST['password'] = “‘ OR ”=’”;
// escapar los datos.
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
// Consultar la base de datos para verificar si hay una coincidencia de usuario
$consulta = “SELECT * FROM usuarios WHERE usuario=’$username’ AND password=’$password’”;
mysql_query($consulta);
// Esto quiere decir que la consulta enviada a MySQL seria:
echo $consulta;
?>
# SELECT * FROM usuarios WHERE usuario=’aidan’ AND password=’\’ OR \’\'=\”
[/php]
Ahora si, nuestra consulta es segura.. ![]()
3 Comments
#1. juliette 03.11.2007
saludos mi niño moxo , bello
#2. Gonzalo Arreche 03.17.2007
Awante windows 98 loco !!!! jajajaja…. esto es para mi primo Gonzalo (casualmente = q yo, je)… ahora q tenes vista, no te acordas de lo q fue win 9x !! saluos !!!!
#3. Tupeorpesadilla.com 03.27.2007
hahahahaahah!
fin.
pd: buena explicacion de la inyección, como ves, no se que poner en el comentario, a ver si visitas mi blog y dejás algun comentario tmb!
Leave a Comment