[解決済み] CORSを悪用した悪意のあるコードによる "Origin "ヘッダーの詐称を防ぐには?
2022-04-13 12:30:30
質問
私の理解では、foo.com のページで動作するクライアント側スクリプトが bar.com にデータを要求する場合、要求の中でヘッダー
Origin: http://foo.com
で応答しなければならず、bar は
Access-Control-Allow-Origin: http://foo.com
.
サイトroh.comからの悪意のあるコードが単にヘッダーを偽装するのを止めるには何があるのでしょうか?
Origin: http://foo.com
を使用して、bar にページを要求することができますか?
解決方法は?
の設定は、ブラウザが管理しています。
Origin
ヘッダーの値を上書きすることはできません。そのため
Origin
ヘッダがブラウザから偽装されます。悪意のあるユーザは、手動で
Origin
ヘッダがあっても、このリクエストはブラウザの外から来るので、ブラウザ固有の情報(クッキーなど)を持っていない可能性があります。
覚えておいてください。CORSはセキュリティではありません。サイトの安全性を確保するためにCORSに依存しないでください。保護されたデータを提供する場合は、Cookie や OAuth トークンなど、CORS 以外のものを使用してください。
Origin
ヘッダを使用して、そのデータを保護することができます。このヘッダは
Access-Control-Allow-Origin
ヘッダーは、どのオリジンがクロスオリジンリクエストを行うことを許可されるべきかを指示するのみです。それ以上のことについては、このヘッダーに依存しないでください。
関連
-
[解決済み】ローカルファイルを開くことができません - Chrome: ローカルリソースの読み込みが許可されていない
-
[解決済み】リソースの読み込みに失敗した:Bind関数でサーバーが500(Internal Server Error)のステータスで応答した【非公開
-
[解決済み】「Access-Control-Allow-Origin」ヘッダが複数の値を含む場合
-
[解決済み] Access-Control-Allow-Originヘッダーはどのように機能するのですか?
-
フロントエンド null のプロパティ 'disabled' を読み取れない 問題が解決された
-
モジュールのビルドに失敗しました。Error: ENOENT: no such file or directory, scandir 'D:\.... \node_modules
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] REST APIからデータを取得しようとしたときに、要求されたリソースに'Access-Control-Allow-Origin'ヘッダーが存在しない。
-
[解決済み] プリフライト要求に対する応答がアクセス制御チェックを通過しない
-
[解決済み] file:// URLから実行されるアプリケーションのリクエストで、"Origin null is not allowed by Access-Control-Allow-Origin" エラーが発生する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
WeChatアプレット用ユニアプリによるグローバルシェアリング
-
JavaScriptのクロージャの説明
-
Javascript Bootstrapのグリッドシステム、ナビゲーションバー、ローテーションの説明
-
[解決済み】React - uncaught TypeError: 未定義のプロパティ 'setState' を読み取れない
-
[解決済み】gulp anythingを実行するたびに、アサーションエラーが発生します。- タスク関数を指定する必要があります
-
[解決済み】TypeErrorの解決方法。未定義またはヌルをオブジェクトに変換できない
-
[解決済み】JavaScript TypeError: null のプロパティ 'style' を読み取ることができない
-
[解決済み] TypeError: $.ajax(...) is not a function?
-
[解決済み】「.addEventListener is not a function」なぜこのエラーが発生するのか?
-
JSクリックイベント - Uncaught TypeError: プロパティ 'onclick' に null を設定できません。