Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/11/2009, 16:57
kadas99
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 14 años, 9 meses
Puntos: 4
Seguridad PHP

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