コース目次 / 第4章
まとめ — 3つの穴が言う1つのこと
反射XSS・IDOR・オープンリダイレクトを貫く共通の原則を言葉にし、診断者の基本の往復として身につけます。次のコースへの橋も渡します。
3つの穴を、攻めて・直して・再検証しました。ここで一度、共通の根を言葉にしておきます。別々に見えた3つは、実は同じことの言い換えでした。
| 穴 | 何を信じてしまったか | 直し方の芯 |
|---|---|---|
| 反射XSS | 入力を、そのままHTMLに出してよいと信じた | 出す前に、出す文脈でエスケープ |
| IDOR | IDを送れる=見る権利がある、と信じた | 要求者の権利をサーバで毎回照合 |
| オープンリダイレクト | 渡された行き先は安全だと信じた | 行き先を自サイト内/許可リストに限る |
貫く2つの原則
1. 外から来た値を信じない。 検索語も、URLのIDも、リダイレクト先も、すべて「攻撃者が自由に書ける値」です。信じてよいのは、自分が検証したあとの値だけ。この不信が、診断者の基本の姿勢です。
2. 守りはサーバ側に置く。 クライアント(ブラウザ)でどれだけ「隠す」「無効化する」をしても、URLもリクエストも攻撃者は自由に組み立てられます。エスケープも認可も検証も、最後の砦はサーバ側にしかありません。
そして、身につけたのは知識だけではありません。攻撃 → 修正 → 再検証という往復そのものです。「穴がある」と言うだけでなく、参照エクスプロイトで成立を示し、直して、防御されているに変わることまで確かめる。この「証拠で閉じる」やり方が、診断の仕事の形です。
サーバは片づける
学び終えたら、やられアプリのサーバは止めておきましょう(起動中のターミナルで Ctrl+C)。意図的に脆弱なものを、うっかり動かしっぱなしにしないためです。もちろん、どのみち 127.0.0.1 の外からは見えませんが、片づけも規律のうちです。
次へ
- 同じ骨格で穴の種類を増やす →「インジェクションを体で覚える」。XSSの全種類・SQLi・コマンドインジェクション・SSTI・パストラバーサルを、攻める側と直す側の対で扱います。
- 認可をもっと深く掘る →「アクセス制御と認可の壊れ方」。IDOR/BOLA/権限昇格は、ツールが最も見つけにくく、いちばん価値の高い領域です。
- 見つけた穴を伝える →「脆弱性診断の歩き方 — 報告書まで」。診断会社が実際に売る成果物=報告書の形にまとめます。
準備ができたら、卒業ページへ進んでください。
こうなっていればOK
この章で卒業です。
この章はまだ完了していません。
保存できませんでした(プライベートブラウズ中かもしれません)。この端末に進捗は残りませんが、先へは進めます。