24 noviembre 2009

Sesiones seguras: es gratis


Ya saben lo que dicen, siempre podrás servir de algo, aunque sea de mal ejemplo. Así que sintiéndolo mucho, vuelvo con las redes sociales, esta vez para hablar sobre las sesiones.

Las sesiones que genera una aplicación web se han de cuidar tanto como se cuida un formulario de autenticación, ya que de una forma u otra una implantación débil de sus medidas de seguridad puede acabar en el robo de una identidad.

Por este motivo una sesión que almacena el registro necesario para autenticarnos en cada una de las peticiones solo ha de ser transmitida por un canal seguro. Evitando que sea escuchada en nuestra red y reproducida por un tercero.

Facebook, el gigante internacional deja a elección del usuario si desea utilizar una conexión segura mediante https o por el contrario accede usando el protocolo en claro. Algo así como Google con Gmail, solo que NO hay una opción para que recuerde nuestra selección anterior.

Esto se puede solucionar (o más bien parchear), ya lo hemos comentado hace tiempo.

Más triste es el caso de Tuenti, nuestro amigo nacional, que desgraciadamente solo funciona bajo http. En el fondo tampoco importa demasiado, los datos que contiene esta red no son de carácter personal (je!).

Retomando Facebook y su canal seguro, es curioso observar que pese han tenido en cuenta el uso de cifrado para la transmisión de datos, se les "ha olvidado" activarle el atributo seguro.

Este valor que se establece en el momento que se crea la cookie de forma bastante sencilla, puede protegernos ante ataques tipo Surf Jacking, con los mediante la inyección de tráfico http se puede obtener la sesión.

Para comprobar esta vulnerabilidad, existe una extensión de Firefox llamada Surf Jacking Security Inspector que facilita la tarea y que mostrara un circulito en caso de que se detecte su inseguridad.


Otra opción es utilizar el propio gestor de cookies de Firefox, donde se muestra si se tiene o no este parámetro activado.


Para el caso de Gmail...

8 comments :

Anónimo dijo...

Se concluye pues que si el usuario no accede via https se puede esnifar la cookie y suplantar la identidad del usuario?

Newlog

Alejandro Ramos dijo...

Nope newlog, es aún peor, incluso en sesiones https se podría llegar snifar la conexión engañando al navegador y haciendole realizar una petición http en la que la cookie iría en claro.

admin dijo...

Si tuenti no usa https, ¿puede que esté incumpliendo la LOPD? Si se intercambian datos especialmente protegidos entre sus usuarios (y es posible que al derivarse de las fotos la raza por ejemplo, así sea) tendrían que cifrar las comunicaciones y los soportes.

Saludos

Miguel dijo...

buena entrada alex!

a ver si entre todos al final conseguimos que se les meta en la cabeza a los usuarios y los desarrolladores el "concepto S"

miguel dijo...

Sí, al ser las cookies establecidas sin el flag de seguras basta con redirigir al navegador de la víctima a una conexión http hacia la página en cuestión (hacia el nombre de dominio para el que se establecieron las cookies), al no ser las cookies seguras el navegador las enviará y entonces nosotros las capturamos, para este propósito está el programa surfjack que funciona muy bien.
Un saludo

Anónimo dijo...

Y ya puestos no cuesta nada activar el uso de HTTPOnly, para que no nos roben la cookie con XSS, ¿no?

James Bond

Anónimo dijo...

ooh! fantastic!! :D

Asfasfos dijo...

No me jodas, es que estos errores son para mear y no echar gota, que páginas web como FB o Tuenti no tengan todo lo posible a nivel de seguridad...

Con respecto a lo que has comentado de que Facebook no contiene datos personales, yo digo lo mismo que tu "JA!!!"