Foros del Web » Programando para Internet » PHP »

Como se utilizaria esto?

Estas en el tema de Como se utilizaria esto? en el foro de PHP en Foros del Web. Hola chicos, encontre este pekenio pedazito de codigo: Código PHP:    //This stops SQL Injection in POST vars foreach ( $_POST  as  $key  =>  $value ) {    $_POST [ $key ] =  mysql_real_escape_string ( ...
  #1 (permalink)  
Antiguo 20/10/2009, 12:45
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 10 meses
Puntos: 25
Como se utilizaria esto?

Hola chicos, encontre este pekenio pedazito de codigo:

Código PHP:
  //This stops SQL Injection in POST vars
foreach ($_POST as $key => $value) {   $_POST[$key] = mysql_real_escape_string($value); }

  
//This stops SQL Injection in GET vars
foreach ($_GET as $key => $value) {   $_GET[$key] = mysql_real_escape_string($value); } 
Se supone que evita que se hagan inyecciones de SQL en querys MySQL, la pregunta del millon es, como se utiliza?
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #2 (permalink)  
Antiguo 20/10/2009, 12:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Como se utilizaria esto?

Pues lo único que hace es escapar todas las variables que vengan por POST o por GET, no es tanto que eviten el Inyection.

Lo debes de poner me supongo al inicio de tu script.

Saludos.
  #3 (permalink)  
Antiguo 20/10/2009, 12:47
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Como se utilizaria esto?

solo lo pones en el codigo deberia funcionar solo :B

ponelo antes de las consultas si
  #4 (permalink)  
Antiguo 20/10/2009, 12:52
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 10 meses
Puntos: 25
Respuesta: Como se utilizaria esto?

Se podra colocar en el archivo de conexion a la BDD? Si es asi, seria antes o despues de la conexion?


Cita:
Iniciado por GatorV Ver Mensaje
Pues lo único que hace es escapar todas las variables que vengan por POST o por GET, no es tanto que eviten el Inyection.
Entonces si no las evita, no serviria ponerlo de nada? O cual seria un metodo efectivo para escapar las variables y evitar la inyeccion SQL?

Gracias chicos
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #5 (permalink)  
Antiguo 20/10/2009, 12:54
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Como se utilizaria esto?

reemplaza comillas por otra cosa son str_replace xD... asi ya dificil que agan algo ^^
  #6 (permalink)  
Antiguo 20/10/2009, 12:57
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 10 meses
Puntos: 25
Respuesta: Como se utilizaria esto?

Cita:
Iniciado por Hidek1 Ver Mensaje
reemplaza comillas por otra cosa son str_replace xD... asi ya dificil que agan algo ^^
Y eso como lo logro Hideki?

Entonces siempre no serviria de nada el script ke koloke?
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #7 (permalink)  
Antiguo 20/10/2009, 13:01
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Como se utilizaria esto?

Pues sirve, y ayuda pero para que escapar todas las variables que vienen, eso es lo que digo, sirve como una protección pero realmente lo correcto sería hacerlo sobre las variables que vayas a enviar a la base de datos.
  #8 (permalink)  
Antiguo 20/10/2009, 13:03
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 15 años, 1 mes
Puntos: 334
Respuesta: Como se utilizaria esto?

osea sirve pero en realidad la seguridad va mas por la forma en que agas las cosas .. los pasos que realizas etc mas que en un codigo que impida el 100% de los ataques ya que eso no existe ...

saludos
  #9 (permalink)  
Antiguo 20/10/2009, 13:04
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Como se utilizaria esto?

Es que para evitar la inyección, no necesitas filtrar todas las variables que vengan por $_POST y $_GET. Sólo tienes que filtrar los datos que vayas a usar en las consultas (además, si es de tipo numérico en lugar de usar mysql_real_escape_string debes hacer un cast a número)
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #10 (permalink)  
Antiguo 20/10/2009, 13:04
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 17 años, 10 meses
Puntos: 25
Respuesta: Como se utilizaria esto?

Entendido, mil gracias por su ayuda chicos
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
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 12:53.