¿Por qué los patrones de token de sincronización y de cookie a encabezado no son naturales para las API web?

0

He escuchado que las técnicas de prevención CSRF no son naturales para las API web.

Por ejemplo, podríamos tener una aplicación cliente en el dominio A que implementa tanto el Patrón de token de sincronización y el Cookie-to -Patrón de cabecera . Cuando el cliente realiza la POST al servidor de recursos en el dominio B, el servidor de recursos necesita validar esos valores de seguridad, y dado que el servidor de recursos no sabría qué valor del token de sincronización ni qué valor de cookie-a-cabecera esperar, tendrá dificultades. validando esos

Dicho esto, el servidor de recursos podría validar el token de sincronización y / o el valor de cookie a encabezado utilizando la misma técnica que utiliza para validar el token de acceso. Dado esto, ¿por qué esas dos técnicas se consideran inapropiadas para una API web?

    
pregunta Shaun Luttin 29.09.2016 - 19:40
fuente

1 respuesta

1

En un flujo CSRF web, el servidor envía el token como parte de la respuesta que sirve a la página web, por lo que el token se entrega "de forma gratuita". Normalmente, el mismo servidor también es el destino de esas solicitudes POST, por lo que puede validar fácilmente los tokens.

Cuando llama a una API web, el destino es probablemente un servidor diferente, por lo que el token tendrá que comunicarse fuera de banda o el cliente tendrá que enviar una solicitud solo para que el token lo use en una solicitud posterior . En cualquier caso, el servidor de la API web maneja el doble de la cantidad de solicitudes, lo que es un desperdicio.

Buenas alternativas son los esquemas de firma digital o los métodos / encabezados HTTP no permitidos por los navegadores.

    
respondido por el billc.cn 29.09.2016 - 20:56
fuente

Lea otras preguntas en las etiquetas