コース目次 / 第4章

報告書を書く — 実務レベルのフルテンプレ

sec-disclosureの1件用テンプレを、複数の発見をまとめる正式な診断報告書に発展させます。要旨・スコープ再掲・手法・発見一覧・発見ごとの詳細・総評という構成を、実際に手元で書きます。

第4章 / 全6章目安 約14分この章のゴール: 複数の発見をまとめる、実務レベルの診断報告書を書けるようになる

sec-disclosure で、1件の脆弱性の報告テンプレを書きました。実務の診断報告書は、それを複数件まとめ、全体像を添えたものです。この章で、フルの構成を組み立てます。

報告書全体の構成

1. 表紙・概要情報 — 対象・実施期間・実施者。
2. エグゼクティブサマリー(要旨) — 経営層や非技術者向けに、全体の結論を数行で。「重大な問題が◯件、うち急ぎ対応が必要なものが◯件」。
3. スコープの再掲 — 第1章で確定した対象・期間・手法を、報告書にも明記する(あとから「これは対象外では」という揉め事を防ぐ)。
4. 手法(methodology) — どう診断したか(手動中心か、ツールを併用したか)の概要。
5. 発見の一覧(サマリーテーブル) — 全発見を、重大度とタイトルだけで一覧表にする。
6. 発見ごとの詳細 — sec-disclosure で書いた型を、1件ずつ。
7. 総評 — 全体を通して見えた傾向(例:「認可チェックの実装が場当たり的」)。個別の穴ではなく、根っこの傾向を指摘する。

なぜ「要旨」と「詳細」を分けるのか

報告書を読む人は、一様ではありません。経営層は「予算をどれだけ緊急に割くべきか」を数行で知りたい。開発者は「どこを・どう直せばいいか」を手順まで正確に知りたい。
1つの文書で、両方に応えます。要旨は平易な言葉で結論だけ、詳細は技術的に正確に。冒頭の要旨だけ読んでも意思決定ができ、必要な人は詳細まで降りていける——この階層構造が、実務の報告書の型です。

発見一覧(サマリーテーブル)の例

■ 発見の一覧

| No | タイトル                        | 重大度 |
|----|----------------------------------|--------|
| 1  | メモ詳細表示における認可不備(IDOR) | 高     |
| 2  | 検索機能における反射型XSS         | 高     |
| 3  | ログイン後リダイレクトの未検証     | 中     |
| 4  | セキュリティヘッダーの一部欠落     | 低     |

一覧を見ただけで、依頼主は「何から手をつけるべきか」を掴めます。

発見ごとの詳細 — sec-disclosureの型を、思い出す

各発見は、sec-disclosure で書いたこの型をそのまま使います。

■ No.1 メモ詳細表示における認可不備(IDOR)

重大度: 高(可能性: 高 / 影響: 高)

対象: GET /notes/:id

概要: ログイン中の利用者が、URLのIDを変更するだけで、他利用者の
非公開メモを閲覧できる。

再現手順:
1. http://127.0.0.1:3000/login?as=u1 でログイン
2. http://127.0.0.1:3000/notes/3 を直接開く
   → 期待: 403。実際: 200 で他利用者(u2)のメモが表示される

影響: 全利用者の非公開メモが、ID を連番で試すだけで漏洩しうる。

修正の提案: メモを返す前に、所有者と現在の利用者が一致するかを
サーバ側で確認し、不一致なら403を返す。

切り分け: 本発見の確認に必要な最小限のみ実施。データの保存・
外部への持ち出しは行っていない。

重大度は前章で決めた基準を、切り分けは sec-disclosure で学んだ節度を、それぞれ明記します。読み手にとっては、この1件の型さえ守られていれば、報告書のどの発見も同じ形で読める——形式の統一が、読みやすさを作ります。

演習 — 1本、書いてみる

これまでのコースで見つけた穴から、2〜3件を選び、上の構成で報告書を組み立ててみてください。

すべて手元で完結する演習です。実在の窓口には送信しません。要旨・発見一覧・発見ごとの詳細の3つがそろえば、十分に実務の骨格を持った報告書です。総評(全体の傾向)まで書ければ、なお実務に近づきます。

持ち帰る一言

要旨で結論を、詳細で手順を。 経営層と開発者、両方に届く階層構造を作り、発見一覧で優先度を一目にし、各発見は sec-disclosure の型で統一する。これが、対価に見合う報告書の骨格です。次はまとめて、提出後の振る舞いまで見届けます。

こうなっていればOK

卒業まであと1章です。

この章はまだ完了していません。