知識ベース — 前提知識と概念整理
Knowledge Base · 各ラボから参照される基礎
KB1
Cookie とブラウザのリクエスト送信
Cookie の自動送信ルール、cross-origin リクエスト、Same-Origin Policy が CSRF を防がない理由、SameSite 属性の役割。
KB2
CSRF の仕組みと防御
CSRF が成立する3つの条件、典型的な攻撃フロー、Token / SameSite / Referer 検証 / Double Submit Cookie パターンによる防御。
Phase 1 — 基礎
Apprentice / Practitioner · CSRF の主要パターン
01
CSRF — メールアドレス変更フォームへの攻撃
Token なしの最も基本的な CSRF。罠サイトから自動送信フォームを発射、被害者の認証 Cookie で攻撃者のアドレスに書き換え。
02
Token 検証不備 — 「Token があれば検証」の罠
Token は実装されているが、「Token フィールドが無いと検証スキップ」というバグ。Token を送らなければ素通り。
03
Token がセッションに紐付いていない
攻撃者が自分のセッションで取得した Token を、被害者の攻撃に使い回せてしまう実装ミス。
04
Referer 検証の回避 — 部分一致の罠
サーバが Referer に
shop.utsuroi.example.com が含まれているかだけを確認。...example.com.evil.com や クエリ偽装で素通り。05
SameSite=None の罠 — サードパーティ連携の代償
サードパーティ連携のために SameSite=None にした結果、Chrome デフォルト保護が無効化されて古典 CSRF 攻撃面が復活。