Webアプリケーションの脆弱性を利用した攻撃手法「CSRF(クロスサイトリクエストフォージェリ)」について解説します。
CSRF とは?
CSRFは、「cross-site request forgeries」の頭文字を取った略称になります。
読み方は、クロスサイトリクエストフォージェリで、Webアプリケーションの脆弱性を利用した攻撃手法です。
攻撃者がダミーのWebページを用意し、そこにユーザーがアクセスすると、ダミーのWebページから不正なリクエストが攻撃対象サーバーに送られます。送られた不正なリクエストが攻撃対象サーバーにあるWebアプリケーションで処理され、ユーザーが想定していない処理が行われます。
脅威
CSRF攻撃によって、どのような脅威が発生するのかについてです。
意図しない送金や商品が購入されてしまうなどがあります。
他にも、勝手にパスワードを変更されたり、掲示板に書き込まれたりもするようです。
wikiやIPAのサイトで過去に発生した、CSRF攻撃の事例があるので、気になる方は覗いてみて下さい。
対策
CSRF攻撃に有効な対策として、以下のようなものがあります。
■サイト外からのリクエストの受信、処理を行わない
まずWebブラウザのリファラーから、リンク元の情報を取得します。
それを元に外部からのアクセスかを判断することが可能なので、想定通りのアクセスの場合のみ処理を行います。
■トークンを生成する
セッションIDとは別にランダムに生成したID(トークン)をhiddenパラメータに格納します。
それを実行ページで評価し、正しい値の場合のみ処理を行います。
コメント