実務で使えるペネトレーションテスト大全
Web・API・モバイル・クラウドを横断して、実務で再現可能なペネトレーションテストを学ぶ
概要
本書は、ペネトレーションテスト(Pentest)を 基礎から実務レベルまで体系的に学ぶための教材である。
ツール操作の手順に留まらず、攻撃モデル・リスク評価・各レイヤの典型的な観点を一貫した流れで扱う。
法的・倫理的注意(重要)
Pentest は攻撃と同質の行為を扱う。許可された範囲内でのみ実施すること。
詳細は「法的注意点と倫理」を参照すること。
まず読む
付録(目的別)
- 用語に迷ったら: 用語集
- すぐ演習を動かしたい: 演習環境クイックスタート
- 何を確認し、何を残すか: 演習タスクと成果物ガイド
- 記入の粒度を確認したい: サンプル成果物(記入例)
- モバイルの対象アプリを用意したい: モバイル演習用アプリの準備ガイド
- 成果物の作り方(フォーマット): テンプレート
学習成果
- Web / API / モバイル / クラウドを横断して、Pentest のワークフロー(スコーピング→計画→評価→報告→改善)を説明し、再現可能な手順として実行できるようになる。
- 代表的な攻撃モデルとリスク評価の考え方を踏まえ、優先度・影響範囲・根拠を整理して報告書(証跡付き)を作成できるようになる。
- 法的・倫理的制約の下での実施範囲管理、関係者との合意形成、成果物管理(ログ/証跡/テンプレート)を含めて「実務としての Pentest」を設計できるようになる。
想定読者
- これから Pentest に携わるセキュリティエンジニア/アプリケーションセキュリティ担当
- Web / API / モバイル / クラウドの評価を求められるインフラ・バックエンドエンジニア
- 外部ベンダーの診断結果をレビューし、改善計画に落とし込む必要がある開発/運用担当
前提知識
- ネットワークと Web の基礎(IP/DNS/TCP/HTTP、Cookie/TLS の概要)
- Linux の基本操作(ターミナル、ファイル操作、ログ確認)
- (推奨)簡単なスクリプト/プログラミング経験(例: Python での HTTP リクエスト、文字列処理)
- 許可された範囲内でのみ検証する前提(法的・倫理的注意の遵守)
所要時間
- 通読: 約3.5〜5時間(本文量ベース概算。コードブロック除外、400〜600文字/分換算)
- 演習環境の構築・ツール操作・レポート作成まで実施する場合は、対象範囲と試行回数により大きく変動する。
読み方ガイド
- まず Part 0(概要/違い/法的注意/環境構築)を通読し、実施範囲と手順の前提をそろえる。
- 次に Part 1(基礎理論)を読み、攻撃モデル(Kill Chain / MITRE ATT&CK / STRIDE)やリスク評価(DREAD)、OWASP ASVS/WSTG などの共通フレームワークを押さえる。
- Web を優先する場合は Part 2 → Part 3、API を優先する場合は Part 2 → Part 4 の順で進める。
- モバイル/クラウドは環境差が大きいため、Part 0 の環境構築ガイドを参照しながら Part 5/Part 6 を進める。
- 最後に Part 7(総合演習)で「計画→評価→報告→振り返り」を一気通貫で実施し、付録のテンプレートで成果物の粒度をそろえる。
目次
Part 0:はじめに
Part 1:基礎理論
Part 2:Web セキュリティ基盤
Part 3:Web Pentest 実践
Part 4:API Pentest と認証/権限管理
Part 5:モバイル Pentest
Part 6:クラウド・インフラ Pentest
Part 7:総合演習
付録
ライセンス
本書は CC BY-NC-SA 4.0 で公開している。商用利用は別途契約が必要である。