variable read leer guardar enviar ejemplos crear cookie añadir javascript security cookies

read - leer cookies javascript



Cómo leer una cookie segura usando JavaScript (2)

El objetivo de las cookies de HttpOnly es que JavaScript no puede acceder a ellas.

La única forma (a excepción de explotar los errores del navegador) para que su script pueda leerlos es tener un script cooperativo en el servidor que lea el valor de la cookie y lo repita como parte del contenido de la respuesta. Pero si puedes y harías eso, ¿por qué usar las cookies de HttpOnly en primer lugar?

¿Hay alguna forma de leer una cookie segura con javascript? Intenté hacerlo utilizando document.cookie y, por lo que puedo ver aquí http://securitymusings.com/article/909/secure-cookies-the-httponly-flag No puedo acceder a una cookie segura de esta manera.

¿Alguien puede ofrecerme una solución alternativa?


Diferentes navegadores permiten diferentes medidas de seguridad cuando se establece el indicador HTTPOnly . Por ejemplo, Opera y Safari no impiden que javascript escriba en la cookie. Sin embargo, la lectura siempre está prohibida en la última versión de todos los principales navegadores.

Pero más importante aún, ¿ por qué quieres leer una cookie HTTPOnly ? Si eres un desarrollador, simplemente desactiva la bandera y asegúrate de probar tu código para xss . Recomiendo que evite deshabilitar esta bandera si es posible. El indicador HTTPOnly y el "indicador de seguridad" (que obliga a que la cookie se envíe a través de https) siempre deben establecerse.

Si eres un atacante , entonces quieres secuestrar una sesión . Pero hay una manera fácil de secuestrar una sesión a pesar del indicador HTTPOnly . Todavía puede viajar en la sesión sin conocer la identificación de la sesión. El gusano MySpace Samy hizo exactamente eso. Usó un XHR para leer un token CSRF y luego realizar una tarea autorizada. Por lo tanto, el atacante podría hacer casi cualquier cosa que el usuario logueado pudiera hacer.

La gente tiene mucha fe en el indicador HTTPOnly , XSS aún puede ser explotable. Debe establecer barreras alrededor de las características sensibles. Tal como la contraseña de cambio presentada debe requerir la contraseña actual. La capacidad de un administrador para crear una nueva cuenta debe requerir un captcha, que es una técnica de prevención de CSRF que no se puede eludir fácilmente con un XHR .