¿Es suficiente la cookie HttpOnly y Secure para evitar el CSRF en la api de descanso?

4

Creé una API RESTful usando Spring. Estoy transmitiendo una clave secreta como HttpOnly & Cookie segura con respuesta de inicio de sesión. Después de iniciar sesión, cada solicitud de resto comprobará con esa cookie y la actualizará cada vez.

¿Es posible que mi sitio web sea vulnerable a CSRF? Estoy usando Spring MVC & Apache 2.4

    
pregunta Paresh Dudhat 23.12.2014 - 07:24
fuente

1 respuesta

1

En primer lugar, CSRF y XSRF se refieren a la falsificación de solicitudes en sitios cruzados.

En segundo lugar, a menos que coloques un token anti-CSRF en una cookie, al menos el atributo HttpOnly debe establecerse si es posible.

Hay situaciones en las que no puede establecer el atributo HttpOnly, un ejemplo es cuando usa un código javascript que requiere poder leer el valor de la cookie (AngularJS).

Si sirve su API REST a través de HTTPS, el atributo Seguro en la cookie anti-CSRF también debería configurarse.

Este URL explica cómo usar y configurar tokens anti-CSRF en el marco de Spring MVC.

Esta URL explica cómo usar el anti- Los tokens CSRF en PHP sin usar un marco PHP.

Hay una situación en la que un atacante puede robar cookies de HttpOnly:

  1. El método HTTP TRACE está habilitado
  2. Apache obsoleto ( CVE-2012-0053 ) (& lt ; v2.2.22)

Si estas dos condiciones no se cumplen, según su descripción, yo diría que su código está suficientemente protegido contra los ataques CSRF, especialmente porque utiliza tokens anti-CSRF basados en solicitudes (sé que los bancos no lo hacen) . ¡Buen trabajo! :)

Sin embargo, no intentes reinventar la rueda. Personalmente, intentaría implementar una protección anti CSRF adecuada utilizando el marco de Spring MVE.

    
respondido por el Jeroen - IT Nerdbox 23.12.2014 - 07:52
fuente

Lea otras preguntas en las etiquetas