¿Previniendo CSRF con flujo implícito y JWTs?

0

Estoy leyendo openid connect document y dice:

  

Poner en una cookie del navegador el token de ID se puede usar para implementar sesiones ligeras sin estado.

IIUC queremos evitar el uso de cookies para asegurarnos de evitar los ataques CSRF, ya que el navegador enviará la cookie con todas las solicitudes, y si el usuario carga una imagen (mientras está conectado a notsosecurebank.com) con la URL:

href="http://notsosecurebank.com/transfer.do?acct=AttackerA&amount;=$100">Read more!

El navegador enviará el token de acceso (ya que es una cookie) y esto permite que ocurra el ataque.

Si el token es almacenamiento en sesión o almacenamiento local y solo se envía a través de solicitudes REST / XHR, ¿entonces no hay forma de que CSRF ocurra? ¿Entendí esto correctamente?

    
pregunta Ole 04.11.2017 - 04:23
fuente

1 respuesta

1

Almacenar el token en la sesión o el almacenamiento local es la solución recomendado por OWASP .

Sin embargo, es necesario, pero no suficiente, proteger de CSRF: si un atacante puede realizar un ataque de secuencias de comandos en sitios cruzados (XSS) en su sitio, el atacante podría inyectar el código Javascript que recupera el token del almacenamiento y lo utiliza. para solicitudes REST / XHR no deseadas.

Sigue las OWASP XSS Prevention Cheat Sheet también y deberías ser bueno.

    
respondido por el Thomas Leplus 28.11.2017 - 02:38
fuente

Lea otras preguntas en las etiquetas