CTF上級編|現場のプロが向き合う10の脆弱性
初級「はじめてのCTF」、中級「CTF実践編」に続く第3階層。CTF特有の出題テクニックではなく、実際の侵害事例・CVE・ペネトレーションテストで現役のプロが向き合う脆弱性クラスを、自分の手で安全に体験する全10話です。最終的には複数の脆弱性を1本の攻撃チェーンに繋ぎ、レッドチーム演習として通しで完遂します。
🏆 あなたの進捗
対象読者:「CTF実践編」を読み終えた人、またはWeb開発・セキュリティ業務でIDOR・JWT・基本的な暗号攻撃の経験がある人。「CTFの先、実務のセキュリティ診断やCVEレポートを読めるようになりたい」人に向けた内容です。
この連載で得られるもの:① フラグ探しではなく脆弱性クラスの構造(なぜ起きるか・どう見つけるか・どう直すか)の理解 ② SSRF・SSTI・パディングオラクル・レースコンディション・IAM権限昇格・OAuth・XXEという、診断レポートで頻出する用語の実体験 ③ クラウド(IAM/メタデータ)という新ドメインへの入口 ④ 最終回で攻撃チェーンを一気通貫で体験する総合力。
安全性について:全話、実在のサービス・実ネットワーク・実ファイルには一切触れない、自作のサンドボックスで完結する設計です。学んだ知識は許可された環境でのみ使ってください。
実務の脆弱性クラスを体験
Capital One事件のSSRF、各種テンプレートエンジンのRCE、POODLE系のパディングオラクルなど、実際に名前のついた攻撃手法の「型」を学びます。
ステージ制+スコア
各話は複数のステージ(サブフラグ)が直列に並ぶ構成。ヒントを開くと減点される100点満点のスコアで、理解度を測れます。
攻撃を「連鎖」で捉える
終盤では単発の脆弱性を1本の侵入経路に繋ぎます。「攻撃は連鎖であり、だから防御も各段で断ち切れる」という視点が連載の背骨です。
10話は、テーマごとに次のアークで構成されています。各話は前提知識が積み上がる構造なので、基本は番号順に読むのがおすすめです。
第1話 上級編へのレベルアップ|実務で使われる脆弱性とは
「CTFのフラグ探し」から「実際の脆弱性クラスの構造理解」への発想転換。IDORで内部ヒントを見つけ、JWTを偽造して受講資格を奪う。
第2話 SSRFでクラウド内部に侵入|メタデータエンドポイントの罠
サーバーに代理リクエストを送らせる機能の危険性。ブロックリストを回避し、クラウドの内部メタデータから認証情報を盗む。
第3話 SSTIでテンプレートエンジンを乗っ取る|{{7*7}}から始まるRCE
テンプレートエンジンの入力評価の仕組みと、コード実行に発展する経路。式の評価から内部設定オブジェクトへ到達する。
第4話 パディングオラクル攻撃|「復号成功/失敗」だけで暗号文を解く
CBCモードのパディング検証が漏らす情報量と、それだけで平文を割り出す統計的攻撃。本物のAES-CBCに対して1バイトずつ解読する。
第5話 レースコンディション|タイミングのズレを突く同時リクエスト攻撃
チェックと実行の間に生まれる競合(TOCTOU)と非同期処理の落とし穴。同時リクエストで残高をマイナスまで引き出す。
第6話 クラウドIAM権限昇格|小さな許可設定の積み重ねがもたらす侵害
個別には無害に見える権限の組み合わせが特権昇格を生む仕組み。自分の許可文書を書き換えて管理者権限を自己付与する。
第7話 OAuth/SSOの落とし穴|認可コード窃取とredirect_uri検証バイパス
OAuth認可コードフローの仕組みと、redirect_uri検証の緩さが招くアカウント乗っ取り。前方一致の穴を突いて認可コードを横取りする。
第8話 XXEで内部ファイルを読み取る|XML外部エンティティの悪用
XMLパーサーが外部エンティティを解決する仕組みと、ファイル読み取りへの悪用。XML取込機能からサーバー内部ファイルを読み出す。
第9話 複合チャレンジ|SSRF×OAuth×XXEを繋ぐ侵入経路
②⑦⑧の技術を1つの侵入シナリオに統合する総合力。各ステップの出力が次の入口になる「攻撃チェーン」を組み立てる。
第10話 レッドチーム演習|偵察から目的達成までの一気通貫
偵察〜侵入〜権限昇格〜横展開〜目的達成の一連の流れを再現。最後は本物のAES暗号を解いて最高機密を奪取する、シリーズの集大成。
| 脆弱性クラス | 該当話 | ひとことで言うと |
|---|---|---|
| SSRF | ② | サーバーに内部へリクエストを送らせ、クラウド認証情報を盗む |
| SSTI | ③ | テンプレートの入力評価からコード実行へ発展させる |
| XXE | ⑧ | XMLの外部エンティティで内部ファイルを読み出す |
| パディングオラクル | ④ | 復号の成否だけを手がかりに暗号文を1バイトずつ解く |
| レースコンディション | ⑤ | チェックと実行の隙(TOCTOU)を同時リクエストで突く |
| IAM権限昇格 | ⑥ | 無害に見える権限の組み合わせで特権に昇格する |
| OAuth / SSO | ⑦ | redirect_uri検証の緩さで認可コードを横取りする |
| IDOR / JWT | ① | IDの推測とトークン偽造で権限を越える |
| 攻撃チェーン | ⑨⑩ | 複数の脆弱性を連鎖させ、最終目的まで到達する |
📖 順番に学ぶ
第1話から順に。各話の冒頭に前提となる回へのリンクがあり、知識を積み上げながら最終回の攻撃チェーンへ到達できます。基本はこれがおすすめ。
🎯 気になる脆弱性から
診断やニュースで見かけた脆弱性(SSRF・XXE・OAuthなど)の回だけ先に読むのもOK。各話は単体でも完結しています。
📒 辞書として使う
「この脆弱性ってどう悪用される?どう直す?」を確認したいときの早見表として。上の早見表から該当話へ飛んでください。
Q. 実践編・初級編を読んでいないと分かりませんか?
第1話で実践編の前提(IDOR・JWT)を軽く振り返るので、Web開発やセキュリティの基礎があれば挑戦できます。ただし各話は前提知識ボックスで実践編の該当回にリンクしているので、不安なら先に読み返すとスムーズです。
Q. これらの攻撃を実際に試しても大丈夫ですか?
各話の体験ウィジェットは、実在のサービス・実ネットワーク・実ファイルに一切触れない自作サンドボックスです。一方、学んだ手法を許可なく他者のシステムに使うのは違法です。知識は許可された環境(CTF・自分の検証環境・業務での正式な診断)でのみ使ってください。
Q. スマホでも遊べますか?
読むのはスマホでも快適です。各話の挑戦ウィジェットは入力欄やボタン操作が中心なので、スマホでも基本的に動作します(一部は画面の広いPCの方が見やすいです)。
Q. 進捗やスコアはどこに保存されますか?
すべてあなたのブラウザのlocalStorage(端末内)だけに保存され、外部へは一切送信されません。このまとめページの進捗バーも、各話と同じ記録を読み取って表示しているだけです。
はじめてのCTF(全20話)
CTFって何?から始める入門連載。Web・暗号・OSINT・フォレンジックの基礎を体験で学ぶ、最初の一歩。
CTF実践編(全10話)
1話で複数ステージの侵入経路を解く中級編。IDOR・JWT・プロトタイプ汚染・RSA・ECB・フォレンジック。本シリーズの前提です。
まずは第1話から
上級編の入口。「CTFの問題」から「実務の脆弱性クラス」への視点転換から始めましょう。
🎖️ CTF上級編・全10話 完結
「攻撃を一連の流れで捉え、各段で断ち切る」——この視点は、現場の防御でそのまま生きます。学んだ知識は、許可された環境の中で、守る力として活かしてください。
CTF上級編|現場のプロが向き合う10の脆弱性 | やさしいサイバーセキュリティ


コメント