podemos secuestrar token CSRF por petición ajax

Mi pregunta es acerca de csrf token, el objetivo de estas fichas y podemos fingir ..

Problema de identidad

vamos a suponer que tenemos bank.com que tiene esta url para hacer un trasaction a una cuenta bank.com/ hacer -las transacciones?cantidad=100USD&a=[accountId] ese enlace sólo será accesible por los usuarios autenticados (depende de la SessionID en las cookies) de una página que tiene la transacción de la forma en bank.com sitio

El problema viene cuando un malicious.com poner un falso formulario con campos ocultos que enviar los datos a la url de arriba. Causando el SessionID en las cookies (relativa a la bank.com) para ser enviados por esta presentación y la trasaction será hecho

El CSRF solución

Esta solución depende de generar el token (token CSRF) que envían con el bank.com página de decisiones de la transacción (en campo oculto ) y guardar en la sesión de usuario actual

Y después de que el usuario submite de datos de la página de la transacción, este token (que será presentada con los datos) se verifican en el token CSRF valor en la sesión del usuario y, si son iguales, entonces la transacción es válida, y si no que significa que hay algo mal y la transacción debe ser rechazado

Y por esto impide que el malicious.com de hacer transacciones por presentar falsos solicitudes .Porque no tiene manera de conseguir este token CSRF y la inyecta con la solicitud.

Mis preguntas

1 - ¿qué pasa si el malicious.com hace petición ajax desde el navegador del usuario para bank.com (que va a enviar la solicitud bank.com relacionados con las cookies. yo estoy en lo correcto ?) y se va a extraer el token CSRF de la respuesta. y inyectar ese token en que es falsa formulario. Será este falso el bank.com con esta secuestrado token?

2 - ¿puedo generar el token CSRF de ajax extremo en una sola página de la aplicación (vamos a decir antes de tomar la acción. Pedir al servidor para un token CSRF y presentar este símbolo con la acción ) o no (si puedo lo que debería de ser consciente de ) ?

Gracias por tu tiempo con mis mejores deseos

  • Respuesta seleccionada
    Quentin
    4 de mayo de 2019

    ¿y si el malicious.com hace petición ajax desde el navegador del usuario para bank.com

    ... a continuación, el explorador del Mismo Origen de la Política va a parar al sitio malicioso de leer el contenido de la página (a menos que explícitamente se permitirá el uso de CORS ... no hay que hacerlo).

    puedo generar el token CSRF de ajax extremo en una sola página de la aplicación (vamos a decir antes de tomar la acción