Stavo creando un sito web come esperimento e ho provato a utilizzare poche richieste Ajax su siti diversi. Su alcuni siti avrò un errore:
XMLHttpRequest cannot load http://example.com/path No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
Quando ho aperto Wireshark e ho visto cosa stava passando attraverso la rete, ho potuto vedere che anche sui siti che hanno prodotto l'errore (il significato non aveva Access-Control-Allow-Origin nella risposta) la richiesta è stata inviata a il sito. Se ho modificato la risposta per includere l'intestazione Access-control-allow-origin: *, la risposta verrà elaborata come necessario nel mio sito.
La mia domanda è: se stavo cercando di fare CSRF al sito richiesto, la risposta non ha importanza quanto la richiesta. Finché la richiesta è stata elaborata su example.com, non importa se la risposta non ha l'intestazione Access-Control-Allow-Origin su di essa o no (supponendo che non mi interessa la risposta, volevo solo l'azione avere luogo).
Sono corretto e la protezione è inutile o mi manca qualcosa?