Questa risposta non è del tutto corretta. CORS non si applica se l'attaccante non sta usando Ajax. Ad esempio, se il tuo sito web non blocca l'utilizzo di IFrame con l'intestazione X-FRAME-OPTIONS, un utente malintenzionato potrebbe semplicemente nascondere un iframe nella sua pagina dannosa e utilizzare javascript per form.submit ().
Come CodesInChaos ha menzionato nel suo commento, lo scenario che ho appena menzionato funzionerà solo se la richiesta non ha alcuna autorizzazione (l'azione del controller ha un attributo [AllowAnonymous], nel caso di ASP.net), o il token di autenticazione viene passato automaticamente dal browser (come avviene con i cookie).
Si noti che se si memorizza il token di sessione in javascript, cosa che si deve fare se si utilizza un'intestazione di richiesta, gli attacchi XSS possono diventare molto più devastanti, poiché un utente malintenzionato sarà quindi in grado di accedere al token di sessione e impersonare il sessione delle vittime. È possibile prendere in considerazione l'utilizzo di cookie tradizionali con il flag HTTPOnly impostato per la memorizzazione del token di autorizzazione e l'aggiunta di un token anti-CSRF tramite javascript.