1

2つの異なるドメインに2つのRubyonRailsアプリがwww.exampleA.comあります(たとえばwww.exampleB.com、2つのアプリ間でリソースを共有したいのですが、CORSを使用しています。

exampleA.comhttpPOSTリクエストをに送信しますexampleB.com

リクエストがから来ていることを確認してexampleB.comいます。trueの場合、httppostリクエストを許可するように応答ヘッダーを設定して応答します。request.env['HTTP_ORIGIN']exampleA.com

私の質問はrequest.env['HTTP_ORIGIN']、リクエスターの身元を確認するための唯一のチェックとして使用できますか?

誰かwww.exampleC.comがHTTP_ORIGINを偽造して、www.exampleA.com悪意のあるデータのように見せかけ、投稿することは可能ですか?もしそうなら、リクエスターの身元を確認するための最良の方法は何ですか?

4

2 に答える 2

3

Origin、ページ作成者がXHRリクエストに設定できないいくつかのヘッダーフィールドの1つです。したがって、XHRリクエストのオリジン情報を安全に信頼できます

ただし、攻撃者が悪意のあるデータを含む偽造されたリクエストを直接送信する可能性はあります。したがって、着信要求を検証する必要があります。

于 2012-11-06T06:18:45.427 に答える
0

申し訳ありませんが、オリジンを含むほとんどのクライアント提供データを偽造するのは簡単です。したがって、どのタイプのセキュリティにも使用しないでください。

于 2012-11-05T23:31:19.307 に答える