Ver Mensaje Individual
  #5 (permalink)  
Antiguo 22/10/2009, 17:10
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: Problema de seguridad con PHH

Cita:
Iniciado por pateketrueke Ver Mensaje
a eso se le llama SQL Injection, es una pena que tu programador PHP sea tan descuidado... o quien halla sido, la verdad me da vergüenza!!

sin ofender... claro..

por ejemplo, lo del ID ... si siempre es numérico... usarlo directamente en una consulta, sin escaparlo es inseguro... de ahí que tu seguridad este por los suelos... (que bueno que no publicas la dirección del sitio)

así es como debería ser.. aunque hay mas formas
Código PHP:
$id = (int) $_GET['id'];
$sql "SELECT * FROM tabla WHERE id = $id"
con la magia de convertir la variable GET en entero.. evitamos toda la inyección de SQL....
Me intereso bastante tu respuesta, queria preguntarte ¿eso de forzar a cada variable GET a ser el tipo que queremos lo haces en cada pagina? ¿o tienes algun metodo que digamos lo haga automatico?

Yo por ejemplo tengo un include al inicio de cada php para evitarme cierto sql-inyection tal que:

Código PHP:
foreach ($_POST as $key => $value) {   $_POST[$key] = mysql_real_escape_string($value); } 
foreach (
$_GET as $key => $value) {   $_GET[$key] = mysql_real_escape_string($value); } 
Pero en este post me he dado cuenta que quizas esto no me sirva con lo que le ha ocurrido al creador del post.... a ver si me dais algun consejo