Web アプリケーションが公開しているものは、ブラウザに表示されるリンクだけではありません。リンクされていないディレクトリ、名前ベースの仮想ホスト、未公開パラメータ、API ルートはいずれも攻撃対象領域を広げます。本コースでは、それらを発見し、アクセスに使われる HTTP リクエストを確認する方法を学びます。
ローカルターゲットに対して ffuf、Gobuster、curl、jq を使用し、コンテンツ列挙から正確なリクエスト作成、REST API 操作へ進みます。最後のチャレンジでは、隠れた仮想ホストを発見し、API パスを特定して、演習用トークンを取得するリクエストを組み立てます。
学習内容
- 提供されたワードリストと
ffufで隠しディレクトリを列挙し、HTTP ステータスコードで結果を絞り込む。 - Gobuster で
.phpや.txtなど指定した拡張子のファイルを検索する。 Hostヘッダーをファジングし、標準応答をサイズで除外して名前ベースの仮想ホストを発見する。- 未公開の GET/POST パラメータ名をファジングし、見つかったアプリケーション動作を検証する。
curlの詳細出力で HTTP 通信を確認し、クエリ、ヘッダー、Cookie、フォーム本文を構成する。- ローカル REST API に認証し、Bearer トークンを送り、
jqで JSON を解析して PUT と DELETE を試す。 - 独立チャレンジで仮想ホスト発見、ディレクトリ列挙、カスタム API リクエストを組み合わせる。
このコースの対象者
基本的な Web リクエストを理解し、Web の攻撃対象領域を実際に調査したいセキュリティ学習者向けの中級コースです。Web ペネトレーションテスター志望者、API セキュリティ学習者、隠しルートやクライアント制御の HTTP フィールドがどうテストされるか知りたい開発・防御担当者にも適しています。
前提知識: Linux ターミナルと基本的なリダイレクトに慣れ、URL、HTTP メソッド、ヘッダー、ステータスコード、JSON 構造を理解していること。
学習環境: ffuf、Gobuster、curl、jq、提供ワードリスト、およびポート 8080 の隔離されたローカル Web/API ターゲットを備えた Ubuntu 22.04 ターミナル。公開システムはスキャンしません。
よくある質問
Burp Suite などのグラフィカルなインターセプトプロキシを使いますか?
いいえ。HTTP インターセプトの演習では、curl の詳細なリクエストを使い、構成要素の読み取りと変更を手作業で学びます。グラフィカルプロキシの基礎にはなりますが、Burp Suite や OWASP ZAP の操作手順は扱いません。
ファジングでパスワードを推測しますか?
いいえ。提供された小さなワードリストで、ディレクトリ名、ファイル名、仮想ホスト名、パラメータ名を試します。認証情報のブルートフォースは行いません。
実在する Web サイトへリクエストを送りますか?
いいえ。すべての列挙と API リクエストは、コース環境内の 127.0.0.1 または localhost のポート 8080 にあるサービスを対象とします。
どのような API 操作を行いますか?
エンドポイントの特定、固定の演習用認証情報によるログイン、Bearer トークン送信、JSON フィールド抽出、PUT と DELETE による隔離 API のデータ変更を行います。最後のチャレンジでは、カスタムヘッダー付き POST リクエストで演習用トークンも取得します。





