elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Seguridad en $session
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Seguridad en $session  (Leído 2,135 veces)
basickdagger


Desconectado Desconectado

Mensajes: 650


System.out.println("this is weird as fuck");


Ver Perfil
Seguridad en $session
« en: 10 Mayo 2014, 00:39 am »

Hola bueno esto trabajando en un sitio y tengo una duda...

tengo una table en mi BD llamada Usuarios..
la cual tengo con 4 campos...

id tipo usuario contraseña...

entonces a la hora de hacer mi login
tomo ciertos valores

Código
  1. if (mysql_num_rows($ejecutar_sql)!=0){
  2.  
  3. if($tipo=='admin'){
  4.  
  5. $_SESSION['usuario']=$usuario;
  6. $_SESSION['tipo']=$tipo;
  7. }
  8.                 if($tipo=='user'){
  9. $_SESSION['usuario']=$usuario;
  10. $_SESSION['tipo']=$tipo;
  11.                }
  12.                return true;
  13. } else {
  14. return false;
  15. }
  16.  
antes de este código comparo que  $usuario y $tipo existan antes  de ejecutar esta parte de código para iniciar cualquier session...

y ya en cada pagina comparo

$_SESSION['tipo']

y dependiendo de este muestro información...

que tan facil es robarse mi session?
es lo peor que puedo hacer?

alguna recomendación...


Saludos!



« Última modificación: 12 Mayo 2014, 16:57 pm por basickdagger » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Seguridad en $session
« Respuesta #1 en: 10 Mayo 2014, 01:18 am »

las sesiones de php originalmente son sumamente sensibles al robo

un ejemplo simple para explicar esto, inicia sesion en (ej) chrome a tu pagina, presiona f12 para abrir la consola de comandos escribe
Código
  1. document.cookie
esto se devolverá un valor como

Código:
PHPSESSID=ert9aj1m97cuns786sbu18l8d1

abre otro navegador (puede ser internet explorer por razones de prueba), en ie presionas f12 para abrir la consola, presionas donde dice "script" y abajo a la derecha escribes
Código
  1. document.cookie='PHPSESSID=ert9aj1m97cuns786sbu18l8d1'

al refrescar la pagina, verás que estás logeado! :P felicitaciones, acabas de aprender a robar una galleta! XD

para evitar esto puedes hacer lo siquiente

en las variables de $_SESSION agregas de las variables del servidor ($_SERVER)
REMOTE_ADDR
HTTP_USER_AGENT

con esas 3 las comparas siempre, esto aunque no es infinitamente infalible es bastante pesado de superar para muchos y requeriría el atacante estar en la misma lan para poder realizar un ataque

hay más metodos, pero los dejo a google para que los busques


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
basickdagger


Desconectado Desconectado

Mensajes: 650


System.out.println("this is weird as fuck");


Ver Perfil
Re: Seguridad en $session
« Respuesta #2 en: 10 Mayo 2014, 19:53 pm »

muchas gracias sinceramente no tenia idea.. aunque tengo una duda.. al destruir un session se eliminan tambien la session de la cookie copiada vdd?

saludos.. voy a informarme más..
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Seguridad en $session
« Respuesta #3 en: 10 Mayo 2014, 20:06 pm »

si, si la sesión se destruye o se cambia de identificador (hay un comando para eso) la cookie copiada queda inútil
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Borrar una session asi?
PHP
Alex_bro 2 2,534 Último mensaje 6 Abril 2010, 21:21 pm
por Alex_bro
Session Null
Hacking
cundre 0 3,372 Último mensaje 17 Junio 2010, 08:13 am
por cundre
ayuda session php
PHP
kakashi20 3 3,844 Último mensaje 2 Febrero 2011, 02:25 am
por kakashi20
php session
PHP
ime 2 2,269 Último mensaje 18 Junio 2013, 15:53 pm
por ime
ataques weak session ids « 1 2 »
Nivel Web
tecasoft 10 7,167 Último mensaje 1 Diciembre 2017, 15:20 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines