Shikata Ga Nai

Private? There is no such things.

第37回:説得力のあるレポートの書き方(構成編)

Hello there, ('ω')ノ

1. レポートのゴールを再確認

目的 読み手 成功指標
脆弱性を 正確に再現 させる トリアージ担当 3 分以内に PoC 成功
ビジネス影響を 瞬時に把握 させる PM・CISO 1 行で重大度を理解
迅速な修正 を促す 開発エンジニア 修正ポイントが具体的

「読んだ直後に次の行動が決まる」 ことが、良いレポートの絶対条件です。


2. 黄金フォーマット 6 セクション

# セクション名 役割
1 タイトル バグ種別 + 影響範囲を 50 字以内で
2 概要(Summary) 1~2 文で「どこで・何が起こる・何が危険」
3 前提条件(Prerequisites) 必要アカウント / 権限 / ツール
4 再現手順(Steps to Reproduce) クリック&リクエストを番号付きで
5 結果 & 期待挙動 実際のレスポンス vs. 本来あるべき挙動
6 影響度 & 修正案 ビジネス損失試算+技術的 Fix 提案

2.1 タイトル例

  • Bad:「脆弱性報告」
  • Good:「管理者 API で認可欠如により一般ユーザが全データ閲覧可能(IDOR)」

検索結果に並んだときでも “深刻度” を瞬時に伝えるのが狙い。

2.2 概要(Summary)

/GET /api/admin/users に認可チェックが存在せず、ログイン済みの一般ユーザトークンで全ユーザ情報を取得できます。本脆弱性は縦方向の権限昇格(BOLA)に該当し、個人情報漏えいリスクが極めて高いと判断しました。

2.3 再現手順(5 行以内)

1. 一般ユーザでログインし JWT を取得
2. Burp Repeater で下記リクエスト送信
   GET /api/admin/users  Authorization: Bearer <user_jwt>
3. 200 OK と共に全ユーザの JSON が返る

2.4 結果と期待

項目 内容
結果 200 OK, ユーザ 1,000 件の個人情報
期待 403 Forbidden(一般権限ではアクセス不可)

2.5 影響度

  • PII(氏名・メール・住所)100,000 件漏えい
  • GDPR/個人情報保護法違反による最大 2 億円の罰則リスク
  • ブランド信頼失墜 → 解約率 ×% 想定

2.6 修正案

  1. サーバ側 RBAC ミドルウェアを admin ルートへ適用
  2. 追加テストケース:一般ユーザで 403 を確認
  3. レート制限ログを監視し、不審アクセスを即遮断

3. 添付資料のベストプラクティス

種類 内容 Tips
スクリーンショット ①前提画面 ②脆弱性発生瞬間 赤枠・番号で視線誘導
リクエスト/レスポンス Burp 自動エクスポート .txt Diff 表示で変更点強調
PoC スクリプト cURL or Python 10 行以内 環境変数でトークン指定

4. やってはいけない NG 構成

NG例 なぜダメ? 改善策
スクショのみで手順が無い 再現できず「Informative」落ち 手順を番号付きで補記
3,000 文字の長文 読む前に離脱 箇条書き+表に整理
影響度が主観 「ヤバいです!」だけ 損害試算 or 同種インシデント引用

5. “読まれる”ための執筆ハック

  1. 結論→理由→詳細 のピラミッド構造
  2. 1 セクション = 5 行以内 を目標に削る
  3. 2 色(赤・黄)だけでハイライト → 迷わない
  4. “調査ログ” と “レポート” を分けて書く

    • ログは長くても OK、レポートは概要のみ

6. テンプレ配布(Markdown)

# {タイトル}

## 概要
{140 字以内}

## 前提条件
- 役割: 一般ユーザ
- 環境: 本番 / staging
- ツール: Burp Suite 2024.6

## 再現手順
1. ...
2. ...
3. ...

## 結果
HTTP/1.1 200 OK
[ { "id": 1, "email": "..." } ]

期待挙動

HTTP/1.1 403 Forbidden

影響度

  • ...

修正案

  • ...
---

## まとめ:構成は **“固定”**、内容で勝負

- 6 セクションの黄金フォーマットを **テンプレ化**  
- 読み手の“次の行動” を意識 → 再現&修正に直結  
- **数字・比較・表** を使い「説得力」を可視化  

> **“読みやすい=信用される”**  
> バグハンターの価値は、技術と同じくらいレポートで決まります。  

Best regards, (^^ゞ