攻撃者が用意したサイトにある罠(わな)のリンクURLを被害者にクリックさせることによって、その罠ページ内に仕込まれたスクリプトが他のサイトの特定の操作(掲示板への書き込みや商品購入処理など)を行う。「リクエスト強要」とも呼ばれる。
Webコンテンツにアクセスするとブラウザは必ず、セッションを維持するためにCookieや他の認証データをブラウザから Webサーバーに送り出すという流れがある。
これを悪用して、直接目標のWebサーバーを攻撃せずにユーザーを別のWebサーバーへと誘導して不正なスクリプトを仕込み、その上でユーザーがいつも閲覧しているサイトを攻撃する。
CSRFの仕組み
普段利用しているサイトに自動的にログインしているユーザーとの間には、すでに信頼関係がつくられているため、こうした第三者が不正なスクリプトを紛れ込ませても、ユーザーもサイト側も気付くことができない。
つまりCSRFが起こる原因は、URLを送信したクライアントが正しいかどうかの判定をサーバー側が適切に行えないことにある。
対策
再認証やリファラー(Referer)のチェック、またはキャプチャ(Captcha)を用いるなどの対策が考えられるが、実質的にはトークンを利用することによって確実に防御が可能である。