Recupero token CSRF

2

Come ho letto sui token CSRF, il server solitamente incorpora il token CSRF nel modulo su un tag nascosto. In questo modo, quando si invia il modulo come richiesta POST, il token CSRF può essere inviato e ricevuto sul lato server per l'autenticazione.

Quindi, la mia idea è che uno script dannoso potrebbe richiedere lo stesso modulo (con il token CSRF incorporato) e utilizzare il token CSRF per eseguire un attacco.

Come possiamo proteggere l'applicazione se il caso sopra è possibile? Mi sto perdendo qualcosa? Grazie in anticipo ragazzi!

MODIFICA / AGGIORNAMENTO:

Ok, diciamo che hai un sito web bancario aperto sul tuo browser con un modulo con token CSRF, quindi apri qualche sito malevolo in un'altra scheda. Il sito dannoso carica ed esegue una richiesta al server per ottenere il modulo (con il token CSRF incorporato), quindi lo analizza e utilizza il token CSRF per eseguire un attacco. È possibile?

    
posta limar 07.06.2018 - 11:22
fonte

1 risposta

2

Questo caso è impedito dalla Politica della stessa origine .

"Under the policy, a web browser permits scripts contained in a first web page to access data in a second web page, but only if both web pages have the same origin. An origin is defined as a combination of URI scheme, host name, and port number. This policy prevents a malicious script on one page from obtaining access to sensitive data on another web page through that page's Document Object Model."

Nel contesto del tuo esempio, il sito dannoso non è autorizzato a eseguire una richiesta sul sito web bancario e un tentativo di farlo risulterà in un messaggio simile al seguente nella console del browser (preso da Chrome):

Failed to load XXX: Redirect from 'XXX' to 'XXX' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.

    
risposta data 23.07.2018 - 18:23
fonte

Leggi altre domande sui tag