¿Existe un riesgo adicional al pasar el token de sesión en el cuerpo del mensaje?

1

Estamos trabajando en una aplicación móvil y estamos utilizando tokens de sesión para la autenticación con un servidor de servicios de fondo. ¿Es un riesgo de seguridad pasar el token de sesión del cliente al servidor en el cuerpo? Esto no es para la autenticación, sino más bien por algo que intentamos lograr en la aplicación. Los tokens ya se han distribuido en los encabezados, por lo que si alguien estaba olfateando nuestro tráfico, tenerlo en el cuerpo no parece ser un riesgo adicional, ¿o me estoy perdiendo algo?

    
pregunta Myelin 21.10.2016 - 23:59
fuente

2 respuestas

1

Tienes razón al suponer que no habrá ningún riesgo adicional al enviar el token en el cuerpo cuando ya lo estés enviando en los encabezados. Me pregunto por qué necesitaría enviar el token en dos lugares, pero en lo que respecta al rastreo del tráfico no será más fácil para un atacante leer el tráfico corporal que el tráfico de cabecera. Si está enviando el tráfico a través de HTTP en lugar de HTTPS, es vulnerable a un hombre en el medio del ataque de cualquier manera.

    
respondido por el Buffalo5ix 22.10.2016 - 00:19
fuente
1

Mi suposición es que su aplicación móvil está basada en html / javascript ... El hecho de que su cliente pueda enviar el token como parte del cuerpo de POST implica que cualquiera de los scripts (1) en la página lee el token del encabezado y luego construye el POST o (2) el token ya está presente en algún lugar de la página (por ejemplo, el campo de formulario oculto) y luego se POSTED. En ambos casos, si tiene una vulnerabilidad XSS en la página, entonces un atacante podría robar el token.

Consejo de OWASP sobre tokens de sesión es usar cookies con el atributo HttpOnly para prevenir (1). Tenga en cuenta que esto significará que su propio código del lado del cliente legítimo no podrá acceder a la cookie para realizar el POST. Prevenir (2) no sería posible en el caso de que tenga una vulnerabilidad XSS que permita que el script acceda al elemento dom que representa el token de sesión.

    
respondido por el feedersec 22.10.2016 - 07:55
fuente

Lea otras preguntas en las etiquetas