CSRF Generator

Este interceptor es usado para garantizar la legitimidad del origen de las peticiones recibidas y para la prevención de ataques CSRF.

Un ataque de CSRF (Cross-Site Request Forgery) consiste en capturar el token de una sesión activa de un usuario, y aprovecharse de esta sesión activa para ejecutar funciones maliciosas en una aplicación a través del navegador de la víctima. Es decir, comandos maliciosos se envían desde un navegador autenticado, en el que confía el sitio web. La principal condición para que el ataque sea realizado con éxito es que la víctima esté autenticada en la aplicación vulnerable y, en paralelo, acceda al sitio web que contiene el código malicioso. Generalmente, la víctima no puede percibir la ejecución de las funcionalidades en la aplicación atacada.

La figura a continuación ilustra el funcionamiento de este tipo de ataque:

csrf example es

Para evitar ataques CSRF, el interceptor CSRF Generator debe ser adicionado en el flujo de respuesta (response) en operaciones que no sean GET (es decir, el interceptor se aplica a las operaciones de inclusión o modification de datos).

Este es su funcionamiento: cuando una petición es hecha a un determinado recurso configurado con un interceptor CSRF Generator, se creará un token según las configuraciones definidas por el usuario. Este token deberá ser validado por un interceptor de CSRF Validation.

Si el interceptor OAuth ya está insertado en el flujo, no es necesario añadir los interceptores CSRF Generator/CSRF Validation para protección contra los ataques, ya que la funcionalidad de OAuth requiere la inclusión de un token en la llamada.

Recomendados utilizar estos interceptores cuando la API está abierta (o sea, sin autenticación de OAuth o client ID).

Configuración del interceptor

Para configurar el interceptor (ver la imagen de abajo), es necesario informar la ubicación del token en la llamada en el campo Location (puede ser header o cookie, por ejemplo), un nombre único (Name) y el tiempo de expiración del token en segundos (en el campo Expires in).

CSRF Generator
Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]