CTF・セキュリティ学習ハブ|攻撃者の思考で本当の防御を学ぶ
このページは何?
CTF(Capture The Flag)は、攻撃者の手口を「自分で試して理解する」ための学習方法です。
このページでは、初めての方が迷わないように、CTFって何?どこから始める?という基本から、実際のwriteup記事まで一気に辿れる入口をまとめています。
こんな人におすすめ
- セキュリティに興味があるけど、何から手を付けたらいいか分からない人
- 「攻撃者目線」で考えるとはどういうことか体感したい人
- writeupを読んでも次の問題が解けない、伸び悩みを感じている人
- 家族や会社のシステムを守る側の人で、まず手口を知っておきたい人
- 学生・社会人問わず、安全側のスキルを実践で身につけたい人
「攻撃者がどう考えるか」を理解すれば、本当の意味で守れるようになる。このページは、CTF(Capture The Flag)を通じてサイバーセキュリティを実践的に学ぶ人のための学習ハブです。問題ごとの「答え」ではなく、何を見て、何を疑い、何を試すか — そういう思考の型を提供します。
本シリーズで扱う技術は、必ずCTF環境・公式ラボ・自分の検証環境内でのみ使用してください。他人のシステム・サービスに対して試すことは、不正アクセス禁止法・刑法等に違反する可能性があり、教育目的であっても許されません。学んだ知識は「守るために」使ってください。
このシリーズの考え方
writeup(特定問題の答え)は世の中にあふれています。しかし、それを読んでも次の問題は解けません。なぜなら、CTFで本当に身につくのは「目の前の入力欄、URL、レスポンスから何を読み取るか」という観察と仮説の立て方だからです。本シリーズは、5フェーズの思考プロセスで全ての記事を構成しています。
観察 — まず何を見るか
URL構造、入力フィールド、エラーメッセージ、レスポンスタイム、ヘッダー、Cookie。前提を疑わず事実だけを集める。
仮説 — 何が脆弱性になりうるか
観察した事実から「ここに穴があるかも」という仮説を複数立てる。SQLi、XSS、IDOR、認証バイパスなど。
検証 — どう確かめるか
Burp Suite、curl、ffuf などで仮説を検証する。失敗もログを取る。
攻撃 — どう繋げるか
確認できた脆弱性をペイロードとして組み立て、フラッグを取得する。
対策 — どう守るか
同じ手口を実環境で防ぐには何が必要か。これが本サイトの本来の主題。
学習ロードマップ
レベルに応じた読む順番です。まずは入門・環境構築で土台を作り、思考フレームワークで型を覚え、実践ラボで型を当てはめる練習をする流れが最短経路です。
- CTFって何?種類と参加方法を完全初心者向けに解説|CTF入門 #01
- 初心者におすすめのCTFプラットフォーム5選:picoCTF・TryHackMe・HackTheBox 比較(準備中)
- 環境構築:Kali Linux と Burp Suite を最短で動かす(準備中)
- #01 【ログイン画面の攻撃者目線】何を狙う?どう守る?
- #02 【新規登録フォームの裏側】サインアップから漏れる情報と防御策
- #03 【パスワード再設定の罠】リセットリンクから乗っ取る手口と対策
- #04 【検索フォームは脆弱性の宝庫】XSS・SQLi・入力検証の急所
- #05 【お問い合わせフォームの危険】スパム・CSRF・メール改ざん対策
- #06 【ファイルアップロード編】二重拡張子・MIME偽装・RCEの入り口
- #07 【プロフィール編集編】IDOR・マスアサインメント・保存型XSSの罠
- #08 【セッション・Cookie編】奪われたら全部終わる身分証の守り方
- #09 【API・GraphQL編】エンドポイント列挙とBOLAの世界
- #10 【CORS・SOP編】ブラウザの境界線を突破する手口と守り方
- #11 【SSRF・LFI編】サーバを内側から覗かせる手口と守り方
- #12 【レースコンディション編】タイミングの隙間を突く攻撃と守り方
- #13 【ビジネスロジック編】仕様の隙間を突く攻撃と守り方
- #14 【SSTI編】テンプレートに混ざる悪意とRCEへの道
- #15 【デシリアライズ編】信頼できないデータを蘇らせるな
- #16 【コマンドインジェクション編】OSコマンドに混ざる悪意とRCEの経路
- #17 【XXE編】XMLに混ざる悪意の参照とファイル漏洩の経路
- #18 【HTTPリクエストスマグリング編】境界の解釈ズレを突く攻撃と守り方
- #19 【Webキャッシュ汚染編】CDNを毒で塗る攻撃と守り方
- #20 【Web LLM編】プロンプトインジェクションと統合アプリの新攻撃面
- Webフォーム+API+サーバ攻撃面 #20まで完結 / 次は Step3 実践ラボ・Step4 ネットワーク&ポストエクスプロイト編へ
📚 思考フレームワークシリーズ|Webフォーム編(公開中)
公開済みの記事をカードで一覧できます。気になるテーマから読み始めるのがおすすめです。

【ログイン画面の攻撃者目線】何を狙う?どう守る?|CTF思考フレームワーク #01
ログイン画面の前で攻撃者は何を考えているのか?観察→仮説→検証→攻撃→対策の5ステップで「攻撃者の思考フレームワーク」を追体験。守る側が本当にやるべきことが見えてきます。

【新規登録フォームの裏側】サインアップから漏れる情報と防御策|CTF思考フレームワーク #02
「メアドとパスワード入れて登録するだけ」のサインアップフォーム。実はここから既存ユーザー列挙、弱いパスワードの強要、大量Bot登録まで起きる。観察→仮説→検証→攻撃→防御の5ステッ\xE2\x80\xA6

【パスワード再設定の罠】リセットリンクから乗っ取る手口と対策|CTF思考フレームワーク #03
パスワードリセット機能は実装ミスが多発する地雷原。トークン推測、HostHeaderInjection、ユーザー列挙——アカウント乗っ取りに直結する脆弱性を、攻撃者目線で5ステップ\xE2\x80\xA6

【検索フォームは脆弱性の宝庫】XSS・SQLi・入力検証の急所|CTF思考フレームワーク #04
検索フォームは反射型XSS・SQLi・ReDoS・コマンド注入が一同に集まる地雷原。攻撃者が3秒で何を試すか、どう守るかを5ステップで実戦解説。

【お問い合わせフォームの危険】スパム・CSRF・メール改ざん対策|CTF思考フレームワーク #05
お問い合わせフォームの送信ボタンの裏で、メール送信・DB保存・外部API・ファイル保存と複数の処理が動く。SSRF・MailHeaderInjection・SSTI・アップロード脆\xE2\x80\xA6

【ファイルアップロード編】二重拡張子・MIME偽装・RCEの入り口|CTF思考フレームワーク #06
ファイルアップロード機能を攻撃者目線で観察。二重拡張子、MIME偽装、パストラバーサル、ImageTragickなど、RCEに直結する手口と防御策を思考フレームワークで整理。

【プロフィール編集編】IDOR・マスアサインメント・保存型XSSの罠|CTF思考フレームワーク #07
プロフィール編集ページを攻撃者目線で観察。IDOR、マスアサインメント、保存型XSSなど「自分のデータしか触れないはず」の前提が崩れる手口と防御策を思考フレームワークで整理。

【セッション・Cookie編】奪われたら全部終わる身分証の守り方|CTF思考フレームワーク #08
セッション・Cookie・JWTの脆弱性を攻撃者視点で観察。Cookie属性、alg=none、セッション固定化、XSS連携など、認証情報を奪われる手口と防御策を思考フレームワーク\xE2\x80\xA6

【API・GraphQL編】エンドポイント列挙とBOLAの世界|CTF思考フレームワーク #09
RESTAPIとGraphQLの脆弱性を攻撃者視点で観察。BOLA、イントロスペクション、ネストDoS、マスアサインメントなど、API層特有の攻撃と防御策を思考フレームワークで整理\xE2\x80\xA6

【CORS・SOP編】ブラウザの境界線を突破する手口と守り方|CTF思考フレームワーク #10
CORS・Same-OriginPolicy・クリックジャッキング・CSPの脆弱性を攻撃者視点で観察。Originエコー、iframe埋め込み、unsafe-inlineなどブラウ\xE2\x80\xA6

【SSRF・LFI編】サーバを内側から覗かせる手口と守り方|CTF思考フレームワーク #11
SSRF・LFI・RFIの脆弱性を攻撃者視点で観察。クラウドメタデータ、php://filter、Gopherプロトコルなど内部ネットワークを覗く手口と防御策を思考フレームワークで\xE2\x80\xA6

【レースコンディション編】タイミングの隙間を突く攻撃と守り方|CTF思考フレームワーク #12
レースコンディション・TOCTOU・SinglePacketAttackの脆弱性を攻撃者視点で観察。クーポン重複、残高マイナス、ユーザー名重複など並列攻撃の手口と防御策を思考フレー\xE2\x80\xA6

【ビジネスロジック編】仕様の隙間を突く攻撃と守り方|CTF思考フレームワーク #13
ビジネスロジック脆弱性を攻撃者視点で観察。価格改ざん、クーポン無限併用、紹介ループ、フロー迂回など仕様の隙間を突く手口と防御策を思考フレームワークで整理。

【SSTI編】テンプレートに混ざる悪意とRCEへの道|CTF思考フレームワーク #14
SSTI(Server-SideTemplateInjection)の脆弱性を攻撃者視点で観察。Jinja2・Twig等のエンジン特定からRCEまでの手口と、サンドボックス・分離に\xE2\x80\xA6

【デシリアライズ編】信頼できないデータを蘇らせるな|CTF思考フレームワーク #15
デシリアライズ脆弱性を攻撃者視点で観察。PHPObjectInjection、JavaDeserialization、PythonPickle、ViewStateなど言語別のRCE\xE2\x80\xA6

【コマンドインジェクション編】OSコマンドに混ざる悪意とRCEの経路|CTF思考フレームワーク #16
コマンドインジェクション脆弱性を攻撃者視点で観察。シェルメタ文字、ブラインド検出、外部コールバック、ImageMagickなど直接RCEに至る手口と防御策を思考フレームワークで整理\xE2\x80\xA6

【XXE編】XMLに混ざる悪意の参照とファイル漏洩の経路|CTF思考フレームワーク #17
XXE(XMLExternalEntity)脆弱性を攻撃者視点で観察。/etc/passwd読み取り、BlindXXEOut-of-Band、SAML悪用などXML特有の攻撃と、パ\xE2\x80\xA6

【HTTPリクエストスマグリング編】境界の解釈ズレを突く攻撃と守り方|CTF思考フレームワーク #18
HTTPリクエストスマグリングを攻撃者視点で観察。CL.TE・TE.CL・H2.CL等の解釈差を使った密輸、他人リクエスト窃取、キャッシュ汚染連鎖の手口と防御策を思考フレームワーク\xE2\x80\xA6

【Webキャッシュ汚染編】CDNを毒で塗る攻撃と守り方|CTF思考フレームワーク #19
Webキャッシュ汚染を攻撃者視点で観察。X-Forwarded-Host反射、CacheDeception、unkeyedinput悪用などCDN時代の主要攻撃と、Vary・Cac\xE2\x80\xA6

【Web LLM編】プロンプトインジェクションと統合アプリの新攻撃面|CTF思考フレームワーク #20
WebLLM(チャットボット、RAG、ツール呼び出し)の脆弱性を攻撃者視点で観察。プロンプトインジェクション、IndirectInjection、システムプロンプト漏洩、LLM出力\xE2\x80\xA6
- picoCTF General Skills 入門5問writeup(準備中)
- TryHackMe / HackTheBox 実践記録(準備中)
- SECCON / CODEBLUE 参加レポート(準備中)
- 国内外CTF大会カレンダー(準備中)
攻撃者と防御者、両方の視点で読む
攻撃者は「ログインページのレスポンスタイムが、存在するユーザー名と存在しないユーザー名で 30ms 違う」ことに気づく。これだけで admin が実在することが特定できる。仮説は事実の差分から生まれる。
同じ脆弱性を実環境で防ぐには、エラーメッセージの統一、レスポンスタイムの正規化、レート制限が必要です。詳しい防御策は パスワードセキュリティ完全ガイド と ビッシング詐欺とAI音声クローニング対策 を参照してください。
最新の更新
シリーズの記事は順次公開予定です。本ページは新記事公開のたびに更新され、常に最新の学習導線を提供します。RSSフィード(/feed/)またはCTFカテゴリページもご活用ください。 最新公開:#20 Web LLM編/#19 Webキャッシュ汚染編/#18 HTTPリクエストスマグリング編。
繰り返しの注意:本シリーズの内容を実環境のシステムに対して試すことは違法です。必ずCTFプラットフォーム、自分の検証環境、または許可された脆弱性診断スコープ内でのみ実施してください。
