コース目次 / 第5章
まとめ — 「あなた」を運ぶ仕組みを、守る
セッションID・Cookie属性・セッション固定・CSRF・OAuthを畳みます。認証診断のチェックリストを持って、T4を締め、次へ進みます。
ログインの「その後」——セッションを運ぶ仕組み全体の壊れ方を、自作のモックで一巡しました。パスワードを破るより、この「あなたを運ぶ仕組み」を突く方が近道になりうる、という攻撃者の視点も掴みました。
認証診断・チェックリスト
診断で、ログインまわりに向ける問いを畳みます。
| 見るところ | 問い | 直し |
|---|---|---|
| セッションID | 予測できないか(乱数・長さ) | crypto 乱数で十分長く |
| Cookie 属性 | HttpOnly / Secure / SameSite はあるか | 3つとも付ける |
| セッション固定 | ログイン時にIDを再生成するか | ログイン成功で必ず再生成 |
| CSRF | 状態変更に意図の確認があるか | CSRFトークン + SameSite |
| OAuth(IdP) | redirect_uri は完全一致か | 登録済みと厳格照合 |
| OAuth(クライアント) | state を発行・照合するか | 必ず生成して照合 |
| JWT | (→ 姉妹コース sec-jwt) | alg固定・強い鍵・exp |
一言に畳むと——「あなた」を運ぶ合言葉(セッションID・トークン)は、当てられず・盗まれず・すり替えられず。状態を変える操作は、意図を確かめる。この2つが認証診断の芯です。
一貫する原則、よたび
このコースの直しも、これまでと同じ姿勢に戻りました。redirect_uri の完全一致の許可リスト、セッションIDの再生成(古いものを無効化)、CSRFトークンと state による意図の確認。「信じるものを明示し、それ以外は拒む」——認可・CORS・CSP・そして認証。守りの設計は、層をまたいで同じ形をしています。
T4 と、この先
T4(認証・認可)は、このコースと姉妹の「JWT を分解する」で構成されます。セッションの仕組み全体(このコース)と、トークンの中身と検証(sec-jwt)。両方で、「あなたが誰であるか」を運ぶ仕組みを、外側と内側から診られるようになりました。
このコースの実習も、相手はすべて自分の 127.0.0.1 のモックでした(法と倫理)。とくに OAuth は実在サービスが絡む仕組みですが、診断を向けてよいのは自作モックと許可環境だけ。仕組みは自分の環境で完全に学べます。
お疲れさまでした。あなたはもう、「ログイン」という一瞬の後ろで動き続ける仕組みの、守り方と壊れ方が見えています。
こうなっていればOK
この章で卒業です。
この章はまだ完了していません。
保存できませんでした(プライベートブラウズ中かもしれません)。この端末に進捗は残りませんが、先へは進めます。