昨日、Asp.Net MVC で Json Hijackingを防ぐ方法についての素晴らしい記事を読みました。ルールは次のとおりです。get リクエストで、適切なデータを json 形式で送信しないでください。Google で簡単に検索すると、認証 Cookie を使用して別の用途からデータを抽出するために使用されるスクリプトを定義する方法を簡単に学ぶことができます。
しかし、これらの記事をすべて読んだ後で、Ajax Jquery ポスト リクエストで Json ハイジャックを実行できない理由がわかりません。Ajax リクエストは同じオリジン ポリシーの対象ですが、JQuery にはクロスドメイン リクエストを実行できるプロパティがあることを読みました。
この場合、ドキュメントの準備完了イベントで $.postJSON を使用するスクリプトで Json Hijacking を行うことは可能ですか? はいまたはいいえの場合、その理由を正確に説明していただけますか?
これは、私が考えていることを実行するための単純なコードの束です。
$.postJSON = function (url, data, callback) {
$.post(url, data, callback, "json");
};
<script>
$(function(){
$.postJSON("/VulnerableSite/ControllerName/ActionName",
{ some data parameters }, function() {
// Code here to send to the bad guy the data of the hacked user.
}
});
</script>
どうもありがとうございました。