Foros del Web » Programando para Internet » PHP »

Seguridad con variable POST

Estas en el tema de Seguridad con variable POST en el foro de PHP en Foros del Web. Buenas Noches!! Que tan segura es una aplicación que maneje la seguridad con variable recibida por metodo post... Ej. archivo permiso.php Código PHP: // Conexion a la bd // Hace Login.. ...
  #1 (permalink)  
Antiguo 28/01/2009, 23:57
 
Fecha de Ingreso: noviembre-2008
Mensajes: 89
Antigüedad: 15 años, 5 meses
Puntos: 0
Pregunta Seguridad con variable POST

Buenas Noches!!

Que tan segura es una aplicación que maneje la seguridad con variable recibida por metodo post...

Ej.

archivo permiso.php
Código PHP:
// Conexion a la bd
// Hace Login..
// Si el login es correcto devuelve una variable $permiso=true, sino en false
// Y envío $permiso por metodo post con peticiones AJAX con el nombre permiso... 
archivo areaCliente.php
Código PHP:
// recibo permiso
$entrar=$_POST['permiso'];
// aqui pregunto si $permiso es true
if($entrar) {
 
// aqui cargo el contenido privado
} else {

// redirecciono al usuario

Es mas o menos así como manejo mi seguridad en mi Sistema Web. Por cuestiones de AJAX que debo estar llamando en varios div flotantes para hacer una aplicación amigable al usuario....

Entonces quisiera saber si es inseguro recibir la variable que me da acceso en el archivo areaCliente.php por metodo post.

Es posible que alguien inyecte la variable post? Si asi lo es como puedo evitarlo??

Muchas Gracias!!
  #2 (permalink)  
Antiguo 29/01/2009, 00:11
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Seguridad con variable POST

esa forma es muy insegura, ya que se puede manipular fácilmente un envío POST

de cualquier modo, siempre es mejor implementar otro tipo de estrategia, por ejemplo:

al hacer login, guardas un hash al azar, lo encriptas y lo colocas como parámetro de POST ... este hash que sería tu ID, lo compruebas siempre antes de ejecutar algún proceso en PHP...

(este mismo hash ID lo debes almacenar en sesión o algo así... de modo que se perpetúe en el servidor)

de esta manera, tan solo proporcionamos una llave que debe coincidir en el servidor... y no tan solo un booleano que diga si puede, o no!?


bueno, esta sería una manera sencilla de hacerlo... pero te reitero, la manera en que lo haces es muy débil....
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 29/01/2009, 10:15
 
Fecha de Ingreso: noviembre-2008
Mensajes: 89
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Seguridad con variable POST

Hola...

Y si en vez de recibir por post.... mas bien lo recibo haciendo un include del archivo permiso...??? Asi mira explico mejor:

archivo permiso.php
Código PHP:
// este archivo simplemente devuelve una variable, por ejemplo. 
// $entrar="accesoID"
// por lo tanto podemos incluirlo en areaCLiente sin necesidad de recibir por POST...
// 
archivo areaCliente.php
Código PHP:
include ("permiso.php");

// Ejemplo permiso.php me devuelve la variable $entra="accesoID"
// entonces compruebo aqui si esta la variable en "accesoID"
if($entrar="accesoID") {
 
// aqui cargo el contenido privado
} else {

// redirecciono al usuario

Bueno he planteado algo similar a lo primero pero sin recibir con POST... Es esto mas o menos seguro??



Gracias!
  #4 (permalink)  
Antiguo 29/01/2009, 10:20
 
Fecha de Ingreso: mayo-2006
Mensajes: 288
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Seguridad con variable POST

no no mal muy mal yo recomiendo no trabajar con POST pues a parte de poder ser inyectado tambien podria ser bonbardeado por AJAX algo que en casos de tratarce de informacion muy confidencial podria traer perdidas inimaginables.

Mas bien trata usando $_SESSION pues a parte de ser una variable para control de Login tambien viaja de manera oculta ;).
  #5 (permalink)  
Antiguo 29/01/2009, 10:37
 
Fecha de Ingreso: noviembre-2008
Mensajes: 89
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Seguridad con variable POST

Parece ser que no me has entendido.... en este ultimo no utilice POST....

utilizo un fichero: permiso.php
que me devuelve no por metodo POST... una variable por ejemplo llamada $acceso con un valor X.

entonces incluyo ese fichero en el archivoPrivado.php

asi:
Código PHP:

// Yo creo que asi inyecten variables post aqui.... no vale porque abajo se le cambia el valor a $acceso apenas incluyo el "permiso.php".
// por ejemplo este fichero me devuelve la var $acceso="PermisoConcedido";
include ("permiso.php"); 

// entonces aqui pregunto si $acceso="PermisoConcedido";.

if($acceso=="PermisoConcedido") {

// muestro mensaja privado
} else {

// sino lo redirecciono al index.php

Si te das cuenta no utilizo POST ahi...
Haber que tal esa idea...

Gracias!!

Última edición por ingeday; 29/01/2009 a las 10:39 Razón: Ninguna.
  #6 (permalink)  
Antiguo 29/01/2009, 13:35
 
Fecha de Ingreso: noviembre-2008
Mensajes: 89
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Seguridad con variable POST

Hola... Bueno por necesidad me ha tocado utilizar el POST porque estoy haciendo todo con AJAX.... Pero tambien he comprendido lo que dicen ustedes, la falla de seguridad, porque simplemente me inyectan la variable por AJAX y POST y hasta ahi llego...

Entonces, quisiera saber como puedo mejorar mi seguridad... actualmente trabajo mi sistema es con COOKIES... mas no con sesiones...

Gracias!
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:32.