応答にトークンを追加することに依存する XSRF ソリューションをいくつか読んだことがあります。これは、POST でのみ実行されるコードを保護するのに役立ちます。
つまり、これは HTTP GET に応答するページに依存するワンステップ攻撃になります。
<img src="http://amazon.com/buybook/anarchistscookbook/mailto/me/execute.php">
しかし、jquery のような優れたライブラリを使用すると、悪意のある Javascript XmlHttpRequest スクリプトを簡単に記述できるようになり、2 段階の攻撃 (GET、Anti-XSRF ビューステート/クエリ文字列/追加の Cookie などの解析) を実行してから POST を送信できます。(それとも? AES がすぐにクラックされる心配はありません。HTTP POST アクションをターゲットとする 2 ステップ XSRF 攻撃が、上記の img タグ攻撃と同じくらい簡単になることを心配する必要がありますか?)
1 ステップ攻撃は、ほとんどの場合、GET で機密性の高い操作を行わないことで阻止できると思います。両方の種類の攻撃は、Web サイトのユーザーに CAPTCHA を解決するよう要求することで阻止できます。CAPTCHA は、すべての URL に必要なクエリ文字列トークンを生成します。残りのセッションは?
これまでのところ、OCR ソフトウェアがテキストを読み取れる場合や機械的なターク コンポーネントがある場合など、CAPTCHA が失敗した場合にのみ失敗するようです。
編集: 念頭に置いている特定の攻撃は、xhr javascript またはイメージ タグを含む電子メールです。そのため、コードは電子メール クライアントのブラウザで実行されるか、ローカル ファイル システムから読み込まれた HTML ページから実行されます。簡単にするために、このサイトには XSS 脆弱性がない (つまり、サイトが応答として送信する HTML に悪意のあるユーザーが HTML を挿入する機会がない) と想像しています。