Foros del Web » Programando para Internet » PHP »

Evitar sql injection

Estas en el tema de Evitar sql injection en el foro de PHP en Foros del Web. Buenas, Despues de leer cientos de webs que hablaban del tema me quedo con el siguiente script, me gustaría que me dieséis vuestra opinión. Os ...
  #1 (permalink)  
Antiguo 21/02/2009, 11:34
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Evitar sql injection

Buenas,

Despues de leer cientos de webs que hablaban del tema me quedo con el siguiente script, me gustaría que me dieséis vuestra opinión.



Os parece suficiente? cambiarias algo? nivel de seguridad del 1 al 10? xD

Gracias!

Edito: No me deja pegar el codigo php me sale un error:
Error 500 page. Change it on /errors/500.html Add more on the .htaccess file

Última edición por neodani; 21/02/2009 a las 11:40 Razón: Problemas al pegar el codigo
  #2 (permalink)  
Antiguo 21/02/2009, 11:39
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Evitar sql injection

Bueno.....hay muchas formas de evitar el injection...... basicamente tenes que escapar o eliminar las comillas, apostrofes......y demas cosas que suelan aparecer en una sentencia de MYSQL
__________________
Salu2!
  #3 (permalink)  
Antiguo 21/02/2009, 11:40
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Evitar sql injection

http://www.php.net/manual/en/functio...ape-string.php

EDIT: Ya viendo tu codigo, lo unico que te digo es que no dependas de magic_quotes_gpc(). Mejor desactivalas y siempre usa addslashes o mysql_real_escape_string.

Código PHP:
<?php echo $var?>
PD: Me dejo poner codigo, solo agregalo luego de haber puesto el POST usando Editar.
  #4 (permalink)  
Antiguo 21/02/2009, 11:42
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Evitar sql injection

Acabo de pegar una imagen del código, no me dejaba poner de ninguna de las maneras.

Espero vuestros comentarios!
  #5 (permalink)  
Antiguo 21/02/2009, 17:27
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Evitar sql injection

Cita:
Iniciado por Ronruby Ver Mensaje
http://www.php.net/manual/en/functio...ape-string.php

EDIT: Ya viendo tu codigo, lo unico que te digo es que no dependas de magic_quotes_gpc(). Mejor desactivalas y siempre usa addslashes o mysql_real_escape_string.

Código PHP:
<?php echo $var?>
PD: Me dejo poner codigo, solo agregalo luego de haber puesto el POST usando Editar.
Así que dejarias el codigo tal cual y solo quitarias la linea

if(get_magic_quotes_gpc())

Correcto?
  #6 (permalink)  
Antiguo 21/02/2009, 17:40
 
Fecha de Ingreso: febrero-2009
Mensajes: 7
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Evitar sql injection

Otra cosa. Usa expresiones regulares, para eliminar comillas y "caracteres raros". Hay muchas funciones dando vuelta para filtrar datos...
  #7 (permalink)  
Antiguo 22/02/2009, 06:19
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Evitar sql injection

Cita:
Iniciado por rodrigoc Ver Mensaje
Otra cosa. Usa expresiones regulares, para eliminar comillas y "caracteres raros". Hay muchas funciones dando vuelta para filtrar datos...
Pero para eso ya se inventó el mysql_real_escape_string() no?

No es suficientemente válida la función expuesta arriba para evitar el sql injection?

Gracias
  #8 (permalink)  
Antiguo 22/02/2009, 08:31
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: Evitar sql injection

Interesante....... ahora por fin lo entiendo..... se cubre de varios casos.

Revisando foros... veo que algunos chequean que no se un numero la entrada.......pues.......en ese caso..... no tendria sentido hacer nada..... pero claro.... luego no se usaria el comillado simple en la consulta para envolver la variable

EDIT: je... perdon por postear una duda...... en fin...... no se porque no lo entendia.....y ahora que estoy quebrado porque vengo de bailar.... se me hizo la luz
__________________
Salu2!

Última edición por Italico76; 22/02/2009 a las 08:44
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:48.