E 'possibile effettuare il valore AntiForgeryToken nel cambiamento ASP.NET MVC dopo ogni verifica?

StackOverflow https://stackoverflow.com/questions/2220664

Domanda

Abbiamo appena avuto alcuni Test di penetrazione effettuata su un programma che abbiamo costruito utilizzando ASP.NET MVC, e una delle raccomandazioni che sono venuti di nuovo era che il valore del AntiForgeryToken nel modulo potrebbe essere ripresentato più volte e non scadono dopo un singolo uso.

Secondo il raccomandazioni OWASP intorno al modello Synchronizer Token:

"In generale, gli sviluppatori hanno bisogno generano solo questo token una volta per la sessione corrente."

Il che è come penso funziona l'ASP.NET MVC AntiForgeryToken.

Nel caso in cui dobbiamo combattere la battaglia, è possibile causare l'AntiForgeryToken per rigenerare un nuovo valore dopo ogni convalida?

È stato utile?

Soluzione

Il token anti-contraffazione è solo un token anti-XSRF. In particolare, si tratta di non un nonce monouso. Se avete bisogno di un nonce monouso per la vostra applicazione, non è possibile utilizzare il token anti-contraffazione per questo scopo. Non v'è alcuna funzionalità incorporata per questo.

Altri suggerimenti

Forse è possibile utilizzare l'AntiForgeryToken utilizzando i tre parametri costruttore .

Utilizzando un sale è sempre consigliato, ma anche limitare il token per dominio e il percorso renderà il vostro segno più sicuro e per pagina unica.

Se non si dispone di XSS vulnerabilità questo problema non sta andando essere un gran casino nel tuo sito web:) // Ti scrivo questo? Sicuramente non ho letto bene il problema.

Cheers!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top