CSRF
しーえすあーるえふ
CSRF
一言でいうと
ログイン中のユーザーに気づかせず、別サイトから操作を強制する攻撃のこと。
詳しい意味
CSRF(Cross-Site Request Forgery、クロスサイトリクエストフォージェリ、シーサーフとも読む)は、ログイン中のユーザーが悪意あるサイトを開いた瞬間に、そのサイトからユーザーの意図しないリクエストを正規サービスに送らせる攻撃です。たとえば「銀行サイトにログイン中に、罠サイトを開くと、知らない間に振込が実行される」といったシナリオが起こり得ます。対策には「CSRFトークンの埋め込み」「SameSite Cookie」「Origin/Referer 検証」などがあります。状態変更を伴う操作(POST / PUT / DELETE)はCSRF対策必須です。
何に使うか
管理画面・決済画面・設定変更APIなど、状態変更を伴うエンドポイントを保護するとき。Cookie ベースの認証を使うサービス全般。
どんな時に出るか
「CSRFトークンが無い」「SameSite=Laxにする」「これCSRFやばい」といった場面で登場します。
具体例
- 管理API全件にCSRFトークン検証を入れた。
- Cookie の SameSite 属性を Strict にして、CSRF面の攻撃面を減らした。
別名・略称
csrf(しーえすあーるえふ)Cross-Site Request Forgery(くろすさいとりくえすとふぉーじぇりー)シーサーフ(しーさーふ)
間違えやすい語
初心者向けメモ
あなたの財布から勝手にお金を引き出すのではなく、「サインだけしておいて」と騙して勝手に振込書を提出させるイメージです。サインの権限はあなたにあるけど、書類の中身は攻撃者が用意したもの、という巧妙な攻撃です。