ウェブサイトに仕掛けられる攻撃手法で代表的なCSRF(クロスサイトリクエストフォージェリ)についてまとめます。
CSRFとは?
攻撃者が用意した悪意のあるサイトにアクセスしてしまうことでスクリプト付きのWebページをダウンロードしてしまい、スクリプトが自動実行され、他のサイトにアクションを起こされる攻撃です。
よく他のサイトにアクションというのは、SNSやAmazonなどのECサイトの不正にログインをされて、アカウントを乗っ取る行為が多いです。
攻撃名を訳すと
CrossSite:サイトをまたいだ
Request:要求の
Forgeries:偽装
悪意のあるサイトからユーザの利用しているSNSなどにサイトをまたいで、本人を偽ったログインの要求をして不正アクセスをする手法であるためこのような名前がつけられています。
攻撃手順
- 攻撃者がWebサイトに罠を仕掛ける
- ユーザが罠を仕掛けられたサイトを見る(SNSログイン済みの状態)
- ユーザがリンク入りページを表示し、リンクをクリック
- WebサイトからSNSのサイトに移り、ユーザ要求を偽って悪意のあるリクエストを送る
- 意図しない操作をされてしまう。
対策
開発の対策
リファラの検証
CAPTHAの利用
リファラの検証をする
CookieにSameSite属性を指定する
ユーザの対策
不用意にログインしたままにしない。
怪しいサイトにはいかない。