Foros del Web » Programando para Internet » PHP »

Como Evitar injection sql

Estas en el tema de Como Evitar injection sql en el foro de PHP en Foros del Web. Hola a todos, tengo una curiosidad como podemos evitar una injection sql, se que es de un tema vital eso en una web quien me ...
  #1 (permalink)  
Antiguo 12/11/2009, 07:34
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 14 años, 11 meses
Puntos: 0
De acuerdo Como Evitar injection sql

Hola a todos, tengo una curiosidad como podemos evitar una injection sql, se que es de un tema vital eso en una web quien me podria dar ... ejemplos o explicarme mas d ese tema gracia..
  #2 (permalink)  
Antiguo 12/11/2009, 07:39
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Como Evitar injection sql

Pero ¿que haz encontrado en internet? Te sugiero que mientras averiguas en internet vayas verificando sobre la funcion mysql_real_escape_string.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 12/11/2009, 08:53
 
Fecha de Ingreso: agosto-2003
Mensajes: 44
Antigüedad: 20 años, 8 meses
Puntos: 2
Respuesta: Como Evitar injection sql

Tambien podes utilizar alguna abstraccion de base de datos que se encargan de escapar/sanitizar las querys automaticamente. Si utilizas algun framework de PHP (CodeIgniter, Kohana, etc), tanto las librerias de DB, ActiveRecord y ORM contemplan sanitizacion de parametros para evitar inyeccion de SQL.

Ademas, estos frameworks, sanitizan los parametros de POST/GET y tienen filtros para evitar XSS.
  #4 (permalink)  
Antiguo 12/11/2009, 09:39
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 14 años, 11 meses
Puntos: 0
De acuerdo Respuesta: Como Evitar injection sql

Ok buscare mas info sobre ese tema, haber que es lo que puedo encontrar.



Pero para evitar esas inyection tgo que utilizar un respectivo codigo en cada pagina tambien eh escuchado con el php.ini configurarlo.
  #5 (permalink)  
Antiguo 12/11/2009, 09:53
 
Fecha de Ingreso: agosto-2003
Mensajes: 44
Antigüedad: 20 años, 8 meses
Puntos: 2
Respuesta: Como Evitar injection sql

Cita:
Iniciado por dquispe Ver Mensaje
Ok buscare mas info sobre ese tema, haber que es lo que puedo encontrar.



Pero para evitar esas inyection tgo que utilizar un respectivo codigo en cada pagina tambien eh escuchado con el php.ini configurarlo.
Sinceramente, nunca toque mucho del php.ini respecto a evitar XSS o SQL Inyection. Podes armarte unas librerias como las que usan los frameworks:

Código php:
Ver original
  1. $var = $this->input->post('variable1'); // falso si la variable no existe, variable sanitizada (filtros XSS) si la variable existe.
  2.  
  3. $this->db->query('SELECT * FROM table WHERE var = ?', array($var)); // el metodo query de la libreria DB como primer parametro utiliza una query con ? en vez de variables y un array de variables que sanitiza (para evitar SQL Inyection) antes de enviar la query a la DB

Hay muchos metodos de hacer todo esto. Fijate que en la pagina de OWASP tenes muchos ejemplos y creo que hasta hay un script en PHP para sanitizar strings tanto para evitar XSS como SQL Inyection.
  #6 (permalink)  
Antiguo 12/11/2009, 10:07
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: Como Evitar injection sql

mientras puedes usar esto en el envio de datos:

mysql_real_escape_string(stripslashes(trim($variab le)));

y en tus querys puedes usar el sprintf
__________________
Quitenme la vida pero no la bebida.
  #7 (permalink)  
Antiguo 12/11/2009, 10:09
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Como Evitar injection sql

Lo que yo uso es
Código PHP:
mysql_real_escape_string("INSERT INTO `tablita-guay`.... ('" mysql_real_escape_string($tuvariable) . "')"); 
Saludos!
  #8 (permalink)  
Antiguo 12/11/2009, 10:30
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Como Evitar injection sql

Ok me quedo un poko mas claro ese tema de como proteger mi sistema.. web.
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 04:29.