「クロスサイトリクエストフォージェリ」の版間の差分

削除された内容 追加された内容
Wanson (会話 | 投稿記録)
74行目:
フォームを受け付けるWebサイト管理者(および情報機器設定用ウェブインタフェースを用意しているあらゆる情報機器のメーカー)は、以下のような対策を施さなければならない。
 
対策方法の1つとして、FormをHTTP GETする際に、[[暗号論的擬似乱数生成器|暗号論的擬似乱数]]値(いわゆるnonce)を、[[Cookie]]値およびformのhidden値として発行し、HTTP POST時にその両者の値の同一性を検証するという方法がある(盗聴されてもいいようにや改竄を防ぐため、どちらかの値はハッシュ関数を通しておく)。外部サイトの作成者はこれらの値を偽造することができないため、不正なPOSTはすべてサーバ側で遮断され検出できる。現代的なHTML Form生成用ライブラリの多くは、これを支援する機能をあらかじめ備えている。
 
[[HTTPリファラ]] (RefererReferrer) を用いて対策することもできる。CSRFは外部formのドメインからのHTTPリクエストであるため、HTTPのRefererを取得し照合することによって外部サイトからの不正なPOSTを判別することができる。第三者のサイトから、Refererを偽造したPOSTを送信させることは不可能であるため、Referer値をチェックすることで対策することが不正な送信を検できる。(HTTPリクエストの送信者自身がRefererReferrerを偽造することは容易であるため、RefererReferrer照合はCSRF対策とはなっても広くサイト外部からの攻撃を防御す、不正なセッションが作成されることへの対策にはならない点に注意が必要である。)
 
== 「ぼくはまちちゃん」 騒動==