Poiché esiste un'opzione per disabilitare il controllo di accesso HTTP (CORS) nei browser, così posso inviare richieste a qualsiasi origine. Quindi, perché dovrei preoccuparmi di eseguire un browser con CORS abilitato?
Per il tuo bene.
Se disabiliti CORS, può accadere quanto segue:
Ti mando il link a una pagina chiamata hackfacebook.com
per esempio. Quando visiti la mia pagina, richiedo la pagina facebook.com utilizzando una richiesta AJAX che, se sei connesso, restituisce il contenuto della pagina e il cookie di sessione.
Ora come proprietario di hackfacebook.com
ho la sessione di accesso.
Come puoi vedere, la disattivazione di CORS è a tuo rischio poiché può aprire un altro attacco.
Lo scopo di CORS è di impedire che un browser web che rispetta la chiamata al server utilizzi richieste non standard con contenuti offerti da una posizione diversa.
Le richieste standard sono fondamentalmente
application/x-www-urlencoded
, cioè non application/json
) Con solo il set limitato di intestazioni standard. Qualsiasi cosa al di fuori di questi vincoli attiverà un controllo CORS tramite una chiamata OPTIONS
.
Leggi altre domande sui tag web-browser cors