Foros del Web » Programando para Internet » PHP »

Validaciones o malas validaciones con GET y POST

Estas en el tema de Validaciones o malas validaciones con GET y POST en el foro de PHP en Foros del Web. Código: Lo que si debieras de considerar es el preligro que puedes estar corriendo de que un usuario mal intencionada te injecte una consulta sql ...
  #1 (permalink)  
Antiguo 09/06/2005, 07:53
Avatar de xcars  
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 18 años, 11 meses
Puntos: 4
Validaciones o malas validaciones con GET y POST

Código:
Lo que si debieras de considerar es el preligro que puedes estar corriendo de que un usuario mal intencionada te injecte una consulta sql por get o por post, por una mala validacion de datos.
como evito para que pueadan obtener datos mediante get o post?
  #2 (permalink)  
Antiguo 10/06/2005, 01:35
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Cita:
Iniciado por xcars
como evito para que pueadan obtener datos mediante get o post?
... más bien, lo que quieres evitar es que puedas recibir datos que no provengan de tu mismo sitio... aunque creo esto es configuración del servidor y el tipo de conexión (quizá deberías preguntar en el foro de Seguridad y Redes), podrías hacer uso de la variable superglobal $_SERVER... e indices como 'HTTP_HOST' ó 'HTTP_REFERER'. Lee al respecto en www.php.net/reserved.variables#server

Aunque , esto no es completamente seguro . Igual podrías crear una variable de sesión en donde despliegas tu formulario y verificar (y elimnar) su existencia en donde vaz a recibir valores... solo actuar si existe dicha variable.. sencillo y seguro.

Igual busca en el foro sobre SQL injection...

... y es todo de mi parte... (¿quién te dijo eso??).
Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 10/06/2005, 08:37
Avatar de xcars  
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 18 años, 11 meses
Puntos: 4
Cita:
Iniciado por jam1138
... más bien, lo que quieres evitar es que puedas recibir datos que no provengan de tu mismo sitio... aunque creo esto es configuración del servidor y el tipo de conexión (quizá deberías preguntar en el foro de Seguridad y Redes), podrías hacer uso de la variable superglobal $_SERVER... e indices como 'HTTP_HOST' ó 'HTTP_REFERER'. Lee al respecto en www.php.net/reserved.variables#server

Aunque , esto no es completamente seguro . Igual podrías crear una variable de sesión en donde despliegas tu formulario y verificar (y elimnar) su existencia en donde vaz a recibir valores... solo actuar si existe dicha variable.. sencillo y seguro.

Igual busca en el foro sobre SQL injection...

... y es todo de mi parte... (¿quién te dijo eso??).
Saludos!

quien me dijo el que?? gracias buscare la info
  #4 (permalink)  
Antiguo 10/06/2005, 21:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por xcars
quien me dijo el que?? gracias buscare la info
esto:

Cita:
injecte una consulta sql por get o por post, por una mala validacion de datos.
Lo que se refiere es que hay que filtrar el dato que te ingresan externo (el que te llega de un formulario .. por un link .. etc) .. Comenzando por "filtrar" que venga el dato en el método esperado (sea POST o GET según uses un formulario con el metodo que corresponda (method) .. o por el URL (sería GET) .. etc). Luego continuar filtrando el valor del dato esperado .. si esperas sólo números .. no aceptes caracteres cualquiera .. despues filtras el dato que va a entrar a la sentencia SQL filtrando con funciones tipo (Mysql): mysql_escape_string() que "escapan" ciertos caracteres (como comillas, / .. etc) que podrían ocasionar que te "compongan" una sentencia SQL tal que pueda arrojar resultados que no deberían ser.

Un saludo,
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 22:23.