CSRF 【Cross Site Request Forgeries】 クロスサイトリクエストフォージェリ / XSRF
概要
CSRF(Cross Site Request Forgeries)とは、Webブラウザを不正に操作する攻撃手法の一つで、偽装したURLを開かせることにより利用者に意図せず特定のサイト上で何らかの操作を行わせるもの。攻撃者はあるサイトへ特定のリクエストを発生させるURL(Webアドレス)を用意し、何らかの方法でこれを偽装・隠蔽してWeb閲覧者に開かせる。閲覧者は気付かずに、あるいは何のURLであるかを誤認して開き、攻撃者の意図したリクエストを発生させてしまう。
URLを開かせる手法はいくつか知られており、Webページやメール本文にリンク先について虚偽の内容を記載したリンクを設置する、HTMLのimgタグのようにページを開くと自動的にURLが読み込まれるタグを悪用する、ページ上にURLを読み込ませるようなスクリプト(JavaScript)や自動転送(HTTPリダイレクト)などを仕掛ける、といった手口が有名である。
URLを開くことによって生じる被害や被害者も様々で、多数の閲覧者から同時に特定のサイトへリクエストを発生させて機能不全に陥らせるDDoS攻撃として用いられることもあれば、URLがSNSやネットサービスなどの手続きや操作を表しており、閲覧者の個人データやアカウント情報の漏洩や改竄、意図しない決済や送金、手続きの執行などの被害を被ることもある。
また、攻撃者が閲覧者になりすまして外部へ攻撃や迷惑行為を働く場合もあり、閲覧者が身に覚えがないまま名誉毀損や業務妨害の加害者に仕立て上げられることがある。2012年に日本で発生した、いわゆる遠隔操作ウイルス事件では、真犯人がこの手口で別の人のWebブラウザから電子掲示板に犯行予告を書き込み、その人が犯人と疑われ検挙される被害が生じた。
CSRF攻撃の標的となるのは、いきなり特定のURLへアクセスするだけで何らかの操作や手続きが完了してしまうWebサイトやWebアプリケーションで、このような状態をCSRF脆弱性という。よく知られる対策法として、送信元のチェックや、利用者が意図してアクセスしたものかの確認(確認画面の表示や画像認証など)、サイト側から発行した情報の提示を求める等の手法があり、これらを組み合わせて十分なチェックを行うのが望ましいとされる。