¿Es una cookie segura sin la marca HttpOnly un problema?

11

Entiendo que las cookies con el indicador de seguridad deben transmitirse a través de una conexión HTTPS. También significa que estas cookies deben protegerse de los adversarios (cookie privada). Por lo tanto, es importante establecer la marca HttpOnly en este tipo de cookie privada para evitar XSS.

¿Es una cookie privada con el indicador de seguridad pero no un indicador HttpOnly un problema?

Esencialmente, creo que la bandera de HttpOnly se debe agregar a una cookie con la bandera de seguridad.

    
pregunta HyunJae Nam 11.04.2017 - 06:29
fuente

4 respuestas

19

El indicador secure garantiza que la configuración y la transmisión de una cookie solo se realicen de forma segura (es decir, https). Si hay una opción para http, la marca de seguridad debería evitar la transmisión de esa cookie. Por lo tanto, un indicador de seguridad faltante se convierte en un problema si hay una opción para usar o recurrir a http.

httpOnly garantiza que los lenguajes de scripting (es decir, javascript) no podrán obtener el valor de la cookie (por ejemplo, a través de document.cookie). La única forma de obtenerlo es a través de los encabezados de solicitud y respuesta http. Por lo tanto, un httpOnly faltante junto con la vulnerabilidad XSS es una receta para el token de sesión robado.

Es mejor poner httpOnly y una marca segura para su token de sesión. Otras cookies, dependería de su sensibilidad y para qué se utiliza.

    
respondido por el Link 11.04.2017 - 09:12
fuente
12

Estas dos banderas mitigan dos vectores de ataque completamente diferentes.

  • HttpOnly: mitiga los ataques exitosos de secuencias de comandos entre sitios.
  • Seguro: mitiga los ataques Man-In-The-Middle.

Uno sin el otro significa que solo has mitigado ese vector en particular. Es decir, depende de qué amenazas estés defendiendo. HttpOnly sigue siendo útil incluso si Secure no está configurado, porque un Man-In-The-Middle también debe colocarse adecuadamente, por ejemplo, en la red local. Un atacante de secuencias de comandos entre sitios podría ubicarse en cualquier lugar de Internet, por lo que mitigar esto en sí mismo sigue siendo útil.

Como nota, estas banderas deben ser solo medidas de "defensa en profundidad". Recomiendo HSTS sobre el indicador de seguridad, y una estricta Política de seguridad de contenido con la codificación de salida adecuada sobre los indicadores de HttpOnly cualquier día, sin embargo, si su sistema ya está creado, agregarlos más tarde puede ser prohibitivo.     

respondido por el SilverlightFox 11.04.2017 - 13:33
fuente
2
El indicador de cookie

HTTPonly actúa como un control de seguridad para las cookies de sesión, ya que evita las secuencias de comandos del lado del cliente. de acceder al valor de la cookie. Esto es efectivo en caso de que un atacante logre inyectar scripts maliciosos en una página HTML legítima. El indicador HTTPonly evitará que el script malicioso acceda a la cookie de sesión y, por lo tanto, evitará el secuestro de sesión .

Tenga en cuenta que este indicador solo reduce el riesgo a un cierto nivel y si existe una vulnerabilidad de inyección de scripts, aún puede ser explotado de varias maneras, como se explica en aquí

    
respondido por el Shurmajee 11.04.2017 - 09:20
fuente
1

El indicador "httponly" impide acceder a esta cookie a través de scripts del lado del cliente (JS, TS) en el navegador. Si tiene una vulnerabilidad XSS en su página, el atacante no podrá acceder a la variable "document.cookie".

Respondiendo a tu pregunta, sí. Esto puede ser un problema.

La página protegida con SSL no protege contra posibles ataques XSS y brinda al atacante la oportunidad de obtener este tipo de cookie.

    
respondido por el Bartosz Rosa 11.04.2017 - 09:18
fuente

Lea otras preguntas en las etiquetas