Foros del Web » Programando para Internet » PHP »

¿Cómo filtrar $_SESSION?

Estas en el tema de ¿Cómo filtrar $_SESSION? en el foro de PHP en Foros del Web. He aprendido a filtrar $_POST y $_GET, pero a la hora de filtrar $_SESSION, sea con filter_input o con filter_input_array el propio netbeans me advierte, ...
  #1 (permalink)  
Antiguo 12/06/2014, 09:50
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
¿Cómo filtrar $_SESSION?

He aprendido a filtrar $_POST y $_GET, pero a la hora de filtrar $_SESSION, sea con filter_input o con filter_input_array el propio netbeans me advierte, y más adelante el propio código me devuelve error, de que el filtro para $_SESSION no está todavía implementado, entonces

¿esto se debe a mi versión de PHP o porque no está todavía implementado en PHP en ninguna vesión?

¿Tendría que realizar el filtro de forma casera en tal caso?

Saludos.
__________________
Ayúdame a hacerlo por mi mismo.
  #2 (permalink)  
Antiguo 12/06/2014, 10:09
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Respuesta: ¿Cómo filtrar $_SESSION?

Sere curioso para que quieres filtrar $_SESSION ? No se nada de seguridad.......aca mismo me han corregido en alguna oportunidad recientemente....... pero aca mi insquietud:


$_SESSION no es algo que provenga de la accion de un usuario como un HTTP REQUEST donde puede haber una Injection .. o un archivo subido que puede ser malicioso y luego ejecutado por el usuario........


En concreto, los usuarios con malicia pueden:


- Modificar los HTTP requests

- Via anterior hacer una injection a tu DDBB

- Subir archivos disfrazados de otra cosa y ejecutarlos

- Modificar una cookie (que estan en la maquina del cliente)


Como un usuario habria puesto algo en $_SESSION ? ejecutando un archivo que te subio via formulario que contiene algo como <?php session_start(); $_SESSION['var']=valor; ...?> ? via injection http ? es AHI donde debes sanitizar.....
__________________
Salu2!

Última edición por Italico76; 12/06/2014 a las 10:45
  #3 (permalink)  
Antiguo 12/06/2014, 14:42
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: ¿Cómo filtrar $_SESSION?

Tienes razón, incluso yo mismo lo pensé así, pero como Netbeans recomienda no acceder a ese tipo de variables directamente pues me surgió la duda :)

En concreto estoy en mitad de resolver el envío de un email de confirmación para que el usuario se registre. Evidentemente un usuario identificado no puede acceder a la opción de registrar un usuario, entonces a la hora de crear el condicional para que si existe $_SESSION['user'] pues que redirija al usuario y no pueda ver el formulario.

Es ahí cuando Netbeans me indica que no es aconsejable acceder a esas variables de forma directa, sino que utilice filter. Y claro, lo apliqué pero el propio parser de PHP me indica error, entonces me descolocó por completo. Fui al manual y sorpresa, no encontraba nada respecto a SESSION con filter, no aparece como soportado. Entonces me quedé sin saber qué hacer :D
__________________
Ayúdame a hacerlo por mi mismo.
  #4 (permalink)  
Antiguo 13/06/2014, 14:27
Avatar de arcanisgk122  
Fecha de Ingreso: junio-2010
Mensajes: 755
Antigüedad: 13 años, 10 meses
Puntos: 28
Respuesta: ¿Cómo filtrar $_SESSION?

Código PHP:
Ver original
  1. if(isset($_SESSION['user'])){
  2. mostrar formulario
  3. }else{
  4. redirecionar a X sitio o imprimir "usted a confirmado su cuenta."
  5. }

ya intentaste esto??
__________________
Cooler Master Gladiator 600 - AMD PHENOM II X4 955 @ 3.5GHZ
GA-MA78GM-US2H - Super Talent 800 2GB x 2 Dual, (Unganged)
PSU Cooler Master eXtreme Power Plus 500W - Saphire R7-260OC-2GB

Etiquetas: filtrar
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 12:19.