Buenas, esta vez solo vengo a mostrarles el articulo de seguridad (mas que nada habla sobre Sql Injection) de php.net/es con ejemplos y todo. Pero no se, me parece que no muestran como solucionarlos :(
Ejemplo
Código:
Example #3 De restablecer una contraseña ... a adquirir más privilegios (con cualquier servidor de base de datos)
<?php
$consulta = "UPDATE usertable SET pwd='$pwd' WHERE uid='$uid';";
?>
Pero un usuario malicioso envía el valor ' or uid like'%admin%'; -- como $uid para cambiar la contraseña del administrador, o simplemente establece $pwd a "hehehe', admin='yes', trusted=100 " (con un espacio al inicio) para adquirir más privilegios. En tal caso, la consulta sería manipulada:
<?php
// $uid == ' or uid like'%admin%'; --
$consulta = "UPDATE usertable SET pwd='...' WHERE uid='' or uid like '%admin%'; --";
// $pwd == "hehehe', admin='yes', trusted=100 "
$consulta = "UPDATE usertable SET pwd='hehehe', admin='yes', trusted=100 WHERE ...;"
?>
Un horrible ejemplo de cómo puede accederse a comandos del nivel del sistema operativo en algunas máquinas anfitrionas de bases de datos.
Espero que les sirva, y ademas pueden ver todo el manual de PHP ahi mismo
Casi me olvido de dejar la url:
http://docs.php.net/manual/es/securi...-injection.php
Un abrazo