¿Es una buena práctica combinar las cookies y el almacenamiento local para proteger contra XSS y CSRF?

1

Sabemos que cookies con httpOnly y secure flag son inmunes a XSS y vulnerables a CSRF ataques. Y al mismo tiempo, sabemos que local storage es vulnerable a XSS , pero puede proteger contra CSRF .

Entonces, qué pasa si los combinamos de esta manera:

1) Use el token de acceso JWT con la propiedad csrftoken en su carga útil y almacene este token en httpOnly y cookie segura y

2) Use csrftoken y guárdelo en el almacenamiento local. El token JWT y csrftoken se envían a un cliente con una autorización exitosa. El navegador envía el token JWT al servidor en cada solicitud y la aplicación pasa scrftoken en un encabezado. El servidor comprueba si csrftoken de JWT y el encabezado coinciden y, en caso contrario, bloquea la solicitud.

Parece que este esquema nos protegerá de ambos tipos de ataques. El código malintencionado que se inyecta en una página no tendrá acceso al token JWT (por lo que no hay XSS) y el código malicioso ejecutado por un usuario fuera de nuestro sitio no obligará a este usuario a enviar su csrftoken en un encabezado (por lo tanto, no CSRF).

Entonces, me pregunto si es una buena práctica y si usan este esquema en aplicaciones del mundo real.

    
pregunta Jacobian 01.09.2017 - 05:36
fuente

0 respuestas

Lea otras preguntas en las etiquetas