In che modo la stessa politica di origine protegge da PUT / DELETE CSRF?

4

Ho letto la guida OWASP per la falsificazione di richieste tra siti e afferma che "altro I metodi HTTP ", come PUT e DELETE potrebbero essere teoricamente usati per CSRF.

Tuttavia con lo stesso criterio di origine queste richieste non vengono eseguite. Perché PUT / DELETE è interessato dalla politica della stessa origine e POST non lo è.

    
posta boolean.is.null 05.04.2016 - 20:09
fonte

1 risposta

4

GET e POST sono metodi usati nel collegamento di base, nell'inserimento e nell'invio di moduli. Questo tipo di interazioni tra i siti precede lo sviluppo della stessa politica di origine. Se la stessa politica di origine fosse estesa per incorporare POST e GET, allora molti siti probabilmente si rompono.

Pertanto, qualsiasi POST e GET che possono essere creati tramite link, incorporamento o moduli sono esclusi dalla stessa politica di origine. Ma GET e POST che usano intestazioni personalizzate o simili che possono essere creati solo con XHR non sono esclusi perché non potrebbero mai accadere in il vecchio web che precede la stessa politica di origine. Vedi anche Le specifiche CORS considererebbero un'intestazione Content-Type mancante per implicare una" intestazione semplice "? per ulteriori informazioni.

PUT and DELETE could be theoretically used for CSRF...However with the same-origin-policy these requests are not executed.

Questo è vero solo per impostazione predefinita. Se il target fornisce una politica CORS appropriata, allora PUT e DELETE potrebbero essere utilizzati anche per CSRF.

    
risposta data 05.04.2016 - 21:42
fonte

Leggi altre domande sui tag