Foros del Web » Programando para Internet » PHP »

peligro de SQL inyection?

Estas en el tema de peligro de SQL inyection? en el foro de PHP en Foros del Web. Quería comentar un poco una duda que tengo sobre ese gran 'miedo' de los webmasters al SQL INYECTION en cuestiones de seguridad de un sitio ...
  #1 (permalink)  
Antiguo 15/11/2004, 10:03
Avatar de xcorpyon  
Fecha de Ingreso: junio-2004
Mensajes: 52
Antigüedad: 13 años, 6 meses
Puntos: 0
Información peligro de SQL inyection?

Quería comentar un poco una duda que tengo sobre ese gran 'miedo' de los webmasters al SQL INYECTION en cuestiones de seguridad de un sitio web.

Primero decir que he estado hojeando algún que otro texto sobre este tema y me entró el 'panico' xDD y me puse a hacer algunos ejemplos con PHP y MySQL...

pero mi sorpresa fue cuando vi que al recibir un campo de texto pasado por un formulario por la variable global $_POST viene ya escapada, es decir, con los caracteres de escape correspondientes y que sirven para detener un posible 'ataque de un hacker', para detener algún código maligno que se sirva del peligroso apóstrofe ('), las comillas (") o el backslash (\) al ejecutar una consulta SQL.

Por ello, qué peligros hay entonces con el mítico password ' or ''='' ?

Es que acaso estoy con una versión de PHP, o de Apache... que subsane la mayoría de estos posibles fallos de seguridad...? es que las versiones antiguas de PHP eran más dificiles de programas en cuanto a seguridad de los sitios web?

Hasta luego, y gracias.
  #2 (permalink)  
Antiguo 15/11/2004, 11:26
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Lee en el manual sobre la directiva magic_quotes_gpc
http://www.php.net/manual/es/ref.inf...gic-quotes-gpc

Cita:
Iniciado por manual php
(...)Cuando magic_quotes se encuentra activo, todos los caracteres ' (comilla-simple), " (comilla doble), \ (barra invertida) y NULs son escapados(...)
Saludos
  #3 (permalink)  
Antiguo 15/11/2004, 12:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Además de lo que comenta jpinedo .. hay que ver también con que BD se trabaja ..

Por ejemplo .. Mysql desde sus funciones de PHP mysql_query() .. sólo ejecuta una instrucción SQL completa por ejecución de esa función .. así que por ejemplo tampoco se pueden hacer en Mysql (al menos) algo tipo:

SELECT * FROM tabla WHERE campo=condicion ; otras instrucciones

Notese el ; que es el separador de instrucciones ... Pero, .. en MS SQL Server .. parece que no es así al igual que otros Motores de BD.

Ante la duda .. por lo menos para Mysql se puede usar la función:
mysql_escape_string() que hace lo mismo que addslashes() si fuese que magic_quote_gpc() estubiese a OFF (cosa que también se puede detectar).

Un saludo,
  #4 (permalink)  
Antiguo 19/09/2005, 13:21
 
Fecha de Ingreso: mayo-2004
Mensajes: 393
Antigüedad: 13 años, 7 meses
Puntos: 0
Hola:

Al hilo de este tema, dado que me preocupa, leí que una forma de fastidiar cuando la página tiene un buscador, es introducir en él <script>alert()</script>
Si sale la alerta, parece ser que el buscador no está protegido y se puede atacar la BD.

No sé hasta que punto esto es cierto y su peligrosidad. Por si acaso, en mi buscador exijo con eregi que los términos de búsqueda empiecen por letras o números.

Lo que no sé es si esto es suficiente protección.

Si sabéis algo, os agradeceré lo comentéis.

Saludos.
  #5 (permalink)  
Antiguo 19/09/2005, 13:35
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Hola javifo....
Para encontrar mucha información al respecto, busca en google por "ataques XSS".

Saludos
  #6 (permalink)  
Antiguo 19/09/2005, 13:52
Avatar de FuLaNo_  
Fecha de Ingreso: mayo-2003
Ubicación: Don Torcuato, Buenos Aires, Argentina
Mensajes: 1.250
Antigüedad: 14 años, 6 meses
Puntos: 2
Mucho de todo esto lo puedes arreglar simplemente haciendo un reemplazo de < por & lt; y > por & gt;...
__________________
I Love Programming...
  #7 (permalink)  
Antiguo 19/09/2005, 14:12
 
Fecha de Ingreso: mayo-2004
Mensajes: 393
Antigüedad: 13 años, 7 meses
Puntos: 0
Gracias a los dos por vuestra respuesta. Miraré lo que me decís.

Saludos
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 07:32.