14

クロスサイト リクエスト フォージェリ (CSRF) 攻撃に関して、Cookie が最もよく使用される認証方法である場合、Web ブラウザーが別のドメインから生成されたページから特定のドメイン (およびそのドメイン) の Cookie を送信できるのはなぜですか?

CSRF はブラウザでそのような動作を禁止することで簡単に防止できませんか?

私の知る限り、この種のセキュリティ チェックは Web ブラウザには実装されていませんが、その理由はわかりません。何か問題がありましたか?

CSRFについて:

編集: 上記の場合、Cookie は http POST で送信されるべきではないと思います。それが私を驚かせるブラウザの動作です。

4

6 に答える 6

10

ブラウザーが Cookie を送信しないのはなぜですか?

サイト A ( http://www.sitea.com ) は、ユーザーの Cookie を設定します。

ユーザーがサイト B ( http://www.siteb.com ) に移動します。サイト B は、サイト A との統合機能を備えています - サイト A で何かをするには、ここをクリックしてください! ユーザーは「ここ」をクリックします。

ブラウザが知る限り、ユーザーはサイト A にリクエストを送信するという意識的な決定を行っているため、サイト A へのリクエストを処理するのと同じ方法で処理します。これには、リクエストにサイト A の Cookie を送信することが含まれます。サイトA。


編集: ここでの主な問題は、認証 Cookie と他の Cookie の間に違いがあると考えていることだと思います。Cookie は、ユーザー設定、最新のハイ スコア、セッション トークンなど、あらゆるものを保存するために使用できます。ブラウザは、各 Cookie が何に使用されているかわかりません。Cookieを設定したサイトで常に Cookie を利用できるようにし、サイトで必要な予防措置を講じるようにします。

それとも、yahoo で「gmail」を検索してhttp://mail.google.comに移動するリンクをクリックすると、 gmail にあなたを保持するように指示したとしても、ログインするべきではないと言っているのですか?別のサイトからのリンクをクリックしたため、ログインしましたか?

于 2008-10-22T00:59:10.697 に答える
4

ブラウザが外部ドメインとの間で Cookie を送信しているわけではありません。認証されており、サイトがリクエストの送信元を検証していないため、リクエストがサイト。

ブラウザがそれを許可しないかどうかについては...クロスサイトリクエストが望ましい多くの状況についてはどうですか?

編集: 明確にするために、Cookie はドメイン間で送信されません。

于 2008-10-22T00:30:00.867 に答える
2

XSRF 攻撃のポイントは、何か悪いことを実行するアプリケーション内の別のポイントにブラウザーを誘導することであるため、その状況でブラウザーができることはあまりありません。残念ながら、ブラウザは、送信するように指示されたリクエストが悪意のあるものかどうかを判断できません。たとえば、XSRF の古典的な例を考えると、次のようになります。

<img src="http://domain.com/do_something_bad" />

何か問題が発生していることはブラウザにはわかりません。結局のところ、あれとこれの違いを知るにはどうすればよいでしょうか。

<img src="http://domain.com/show_picture_if_authenticated" />
于 2008-10-22T00:58:33.680 に答える
2

多くの古いプロトコルには大きなセキュリティ ホールがあります。最近発見されたDNS の脆弱性を思い出してください。基本的にあらゆるネットワーク セキュリティと同様に、それはエンドポイントの責任です。ええ、これを自分で修正しなければならないのは残念ですが、ブラウザ レベルで修正するのははるかに困難です。明らかなものもいくつかありますが (<img src="logoff.php"> は怪しげに見えますよね?)、例外的なケースは常に存在します。(結局のところ、これは PHP ファイルの GD スクリプトである可能性があります。) AJAX クエリはどうでしょうか。等々...

于 2008-10-22T01:48:48.710 に答える
1

サイトの Cookie が別のサイトに送信されることはありません。実際、CSRF 攻撃を成功させるために、攻撃者はこれらの Cookie にアクセスする必要はありません。

基本的に、攻撃者はターゲット Web サイトにすでにログインしているユーザーをだまして、リンクをクリックさせたり、そのユーザーの資格情報を使用してターゲット サイトで何かを行う画像をロードさせたりします。

つまり、ユーザーがアクションを実行していて、攻撃者がユーザーをだましてそうさせたということです。

于 2008-10-22T02:01:50.853 に答える
0

一部の人々は、ブラウザーでできることはあまりないと考えていると述べています。

これを参照してください:

http://people.mozilla.org/~bsterne/content-security-policy/origin-header-proposal.html

これは、CSRF 攻撃を軽減するのに役立つ新しい HTTP ヘッダーの提案の概要です。

提案されたヘッダー名は「Origin」で、基本的には「Referer」ヘッダーからパスなどを引いたものです。

于 2008-11-01T08:47:25.777 に答える