Ver Mensaje Individual
  #7 (permalink)  
Antiguo 27/06/2002, 09:34
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Re: Problema con el paso de variables

Urjose:

El problema de seguridad vienen por lo siguiente (un ejemplo):

imagimenos que tenemos la variable $variable que recogemos en un script al cual le enviamos datos por metodo POST ..

<form action="script.php" method="post">
<imput type="text" name="variable">
</form>

Si en script.php recogemos este valor por el metodo tradicional .. y regsitre_globals = ON
<?
echo $variable;
?>
Nos dará igual el método enviado de esos datos (POST o GET) ..

Y por lo tanto puedo "adulterar" esa entrada de datos simulando una entrada por GET .. tan solo con formar el URL con la variable incluida(s):
script.php?variable=valor

Con lo cual no tenemos ningun control de donde nos llegan las variables .. (Si por GET o por POST)...

Los datos enviados por metodo POST no son "invisibles" 100% pero si que ayudan a ocultar los datos enviados para el usuario medio .. Y no es tan facil "adulterar" la entrada de datos de script.php .. apesar de que siempre tenemos que validad esos datos que solocitamos (tipo y tal vez valor ..) en el script que lo procese (script.php).

Por el contrario .. si decimos a PHP (al script que procese los datos) que los datos van a llegarle por metodo GET o POST .. el script no procesará mas que lo que le llegue por su array asociado $_GET[] o $_POST[] (o en versiones anteriores a 4.1 si mal no recuerdo .. $HTTP_POST_VARS[] o $HTTP_POST_VARS[] segun corresponda).

Este es basicamente uno de su usos por el tema de seguridad.

Un saludo,