クロスサイトリクエストフォージェリ(CSRF)
CSRF(cross-site request forgery、クロスサイトリクエストフォージェリ、シーサーフ)
Webアプリケーションへのリクエストを偽造(forgery)され、ユーザーの意図しない処理が実行されてしまう脆弱性
cross-siteは正規のサイトと罠サイトをまたぐこと
forgeryは偽造
攻撃のなかで「正規のWebアプリケーションA」と「罠サイト」の2つのサイトをまたいで(クロス・サイト)、リクエストを偽造する(リクエスト・フォージェリ)点が、CSRF攻撃の特徴です。
ref: CSRF対策|しくみと最新の防御方法を解説 | Aeyescan
認証の脆弱性とも言えそう
CWE-345
CWE - CWE-345: Insufficient Verification of Data Authenticity (4.12)
CSRFを受けるとセッションハイジャックによりなりすましをされたり勝手にお金を送金されたり、勝手にSNSに投稿されたりなどが起こる
いつ起こるか
ユーザーが正規のサイトでログイン
→ユーザーが罠サイト(攻撃者サイト)を閲覧する
罠サイトが不正なリクエストを云々
対策
ユーザー側
セッションの時間を短くする
信頼できるフレームワークやライブラリを使用する
CSRFトークン
リクエストヘッダの確認
Refererチェック
最近はバイパスする仕組みが出てきた?
Bypass CSRF checks using referrer policy
確認用
Q. CSRF
Q. CSRFを受けると何が起こるか
Q. CSRFの対策は
参考
安全なウェブサイトの作り方 - 1.6 CSRF(クロスサイト・リクエスト・フォージェリ) | 情報セキュリティ | IPA 独立行政法人 情報処理推進機構
CSRF対策|しくみと最新の防御方法を解説 | AeyeScanメディア
CSRF(リクエスト強要攻撃)/セッション・フィクセーション<情報倫理・セキュリティ<Web教材<木暮
フレームワークのチェック例
CSRF保護 8.x Laravel
6.6. CSRF対策 — TERASOLUNA Server Framework for Java (5.x) Development Guideline 5.1.1.RELEASE documentation
高木浩光@自宅の日記 - CSRF対策に「ワンタイムトークン」方式を推奨しない理由, hiddenパラメタは漏れやすいのか?
高木浩光@自宅の日記 - クロスサイトリクエストフォージェリ(CSRF)の正しい対策方法
Bypass CSRF checks using referrer policy
関連
クロスサイトスクリプティング(XSS)
HTTP Cookie
クリックジャッキング
調査用
/pogi-log/Google.icon CSRF(日:検索)
/pogi-log/Google.icon CSRF(英:検索)
/pogi-log/Wikipedia.icon
CSRF - Wikipedia(日)
CSRF(検索) - Wikipedia(日)
クロスサイトリクエストフォージェリ - Wikipedia(日)
クロスサイトリクエストフォージェリ(検索) - Wikipedia(日)
/pogi-log/Wikipedia.icon
CSRF - Wikipedia(英)
CSRF(検索) - Wikipedia(英)
Cross-site request forgery - Wikipedia(英)
Cross-site request forgery(検索) - Wikipedia(英)
メモ
大量の「はまちちゃん」を生み出したCSRFの脆弱性とは? - ITmedia エンタープライズ
#攻撃手法