In base al link :
When a user authenticates to a site, the site should generate a (cryptographically strong) pseudorandom value and set it as a cookie on the user's machine separate from the session id.
(sottolineatura mia)
Perché il token CSRF deve essere memorizzato in un cookie separato se l'ID di sessione è:
- un valore casuale (un valore che l'attaccante non può indovinare)
- memorizzato in un cookie (un valore che l'autore dell'attacco non può leggere)
- generato dal server (un valore che l'autore dell'attacco non può scrivere)
Perché non utilizzare semplicemente l'ID di sessione come token CSRF? Dovresti comunque inviare il valore due volte (una volta nel cookie, una volta nel modulo) e confrontare i valori, ma non lo farei utilizzare un cookie separato per il token CSRF.