¿La configuración httponly evita el robo de una sesión usando XSS?

15

Si un token de sesión se almacena en una cookie que se ha configurado httponly, ¿hay alguna forma en que una vulnerabilidad XSS podría permitir que un usuario malintencionado robe un token de sesión de los usuarios?

    
pregunta Abe Miessler 08.10.2013 - 21:53
fuente

5 respuestas

17

En general, si httponly está configurado en su token, entonces un ataque XSS no debería poder recuperar un token de sesión. Modulo los errores anteriores en los navegadores y complementos, y la configuración incorrecta del servidor (por ejemplo, respondiendo a HTTP TRACE).

Pero no vale mucho. Puede impedir que XSS obtenga el token, pero un ataque XSS todavía tiene el control total de la sesión en la máquina del usuario: puede forzar al usuario a hacer casi cualquier cosa en el sitio o falsificar la interfaz del usuario con el sitio ( por ejemplo, a phish para credenciales del sitio). Consulta BeEF para ver un ejemplo de lo que un atacante puede lograr con una sesión comprometida: ya casi has perdido.

No configurar httponly en el mejor de los casos hace que la vida del atacante sea un poco más fácil, ya que puede acceder a la sesión desde su propia máquina en su propio tiempo, en lugar de estar limitada por la cantidad de tiempo que el usuario mantiene abierta la ventana del navegador. Vale la pena tener httponly cuando sea posible, pero es una mitigación suave que no te protege mágicamente de los efectos de XSS.

    
respondido por el bobince 09.10.2013 - 12:44
fuente
3

Si se hace correctamente, HttpOnly evita que un atacante robe la cookie. Sin embargo, aún pueden realizar solicitudes web arbitrarias que suplanten a los usuarios víctimas y extraer las respuestas. Por ejemplo, BEEF tiene un módulo para hacer esto.

En otras palabras, HttpOnly hace las cosas más difíciles para un atacante, pero no detiene a un atacante experto.

Además, como han señalado otros, hay varios defectos que pueden permitir que un atacante extraiga una cookie HttpOnly.

Línea inferior: todo XSS es potencialmente grave y necesita corregir las fallas de XSS.

    
respondido por el paj28 09.10.2013 - 13:00
fuente
3

La función HttpOnly se puede omitir en ciertas versiones de algunos navegadores y servidores web.
Más datos (natexim )
Más datos (google)

Los ataques XSS son tan flexibles que aún pueden ejecutarse si, por ejemplo, se ha usado la función HttpOnly para ocultar la cookie de JS y ETC. páginas web internas, etc.

    
respondido por el Sajjad Pourali 08.10.2013 - 22:18
fuente
2

Sí. Principalmente. El encabezado evita "Robo de cookies", que es una forma fácil para que un script secuestre su sesión.

También depende si su navegador admite el encabezado HTTPonly. Si no, se ignora y la funcionalidad que crea nunca sucede.

Aquí hay un enlace que explica el encabezado un poco más. También contiene una tabla que muestra qué navegadores lo admiten: enlace

    
respondido por el DCIndieDev 08.10.2013 - 22:17
fuente
-1

si HTTPOnly no está configurado en el encabezado, será vulnerable. a XSS, solo tanto como su navegador admita este indicador en el encabezado. El elemento importante a entender es que esto depende principalmente de la capacidad de los navegadores web para establecer esta bandera.

    
respondido por el Jon_Little-Sec Engineer 09.10.2013 - 01:41
fuente

Lea otras preguntas en las etiquetas