Everyoneは、CORSはCSRF攻撃から防御するために何もしないと言います。これはCORSがドメイン外のドメインからドメインのリソースへのアクセス(読み取り)をブロックするためですが、ではが要求の処理を妨げていません。そのため、悪質なサイトは、結果を読み取ることができないことを気にせずに、状態を変更するDELETE要求を送信することができます。なぜCORS前線はCSRF攻撃を阻止しないのですか?
これはすべてうまくいいです。
pre-flight CORSを除く。
CORSは、この要求が送信される前にその要求を調べ、正当なものかどうかをチェックします。そうでない場合、要求は拒否されます。
だからCSRFの攻撃者が送信しようとDELETE要求が飛行前チェックに失敗したため、拒否されます。 CSRF攻撃は失敗します。
私はここで何が欠けていますか?
「すべてのクロスドメインAjaxの呼び出しは、プリフライトリクエストを生成しないたとえばは、無地のPOSTにはありません。」何故なの? – ineedahero
単純なクロスオリジン投稿を行うには、ajaxは必要ありません。あなたは普通の書式の投稿を使うこともできるので、それを制限する上で大きな価値はありません。 –
ああ。私はあなたが何を言っているのかを見ます。私はそれを疑問に思っていた。なぜCORSのプリフライトはPUTリクエストでは有効になるが、POSTリクエストでは有効にならないのだろうか?あなたが言うように、POSTはちょうど危険なことができます.... – ineedahero