PR・コミット差分のセキュリティ特化レビュー。認証・暗号・外部呼び出し・入力バリデーションのリスクを優先的に分析する。
Trail of Bits のセキュリティレビュー手法を参考にした差分レビュースキル。
以下の場合にこのスキルを適用する:
/review-respond でセキュリティ観点の深い分析が必要な場合差分を取得し、各ファイルをリスクレベルで分類する。
# 変更ファイル一覧を取得
git diff --name-only origin/main...HEAD
# 差分の統計情報
git diff --stat origin/main...HEAD
リスクレベルの判定基準:
| リスク | トリガー条件 | 例 |
|---|---|---|
| HIGH | 認証・暗号・外部呼び出し・入力バリデーション・権限チェック | auth/, middleware/, crypto, API key handling |
| MEDIUM | ビジネスロジック・状態変更・新規パブリックAPI・DB操作 | services/, models/, controllers/ |
| LOW | UI・コメント・テスト・ログ・設定ファイル | components/, .test., .config. |
HIGHリスクファイルから順に分析する。
各ファイルの変更を以下の観点で分析する:
セキュリティ関連の変更に対するテストが存在するか確認する:
変更が影響する範囲を評価する:
# 変更されたファイルを参照している箇所を検索
# (importやrequire元を確認)
HIGHリスクの変更に対して、攻撃者の視点で評価する:
発見事項を以下の形式で報告する:
## セキュリティレビュー結果
### エグゼクティブサマリー
- レビュー対象: {PR/コミット}
- リスク評価: {HIGH/MEDIUM/LOW}
- 発見事項: {Critical: N件, Important: N件, Informational: N件}
### 発見事項
#### [Critical/Important/Informational] {タイトル}
- **場所**: {ファイル:行番号}
- **説明**: {脆弱性の説明}
- **影響**: {攻撃シナリオと影響範囲}
- **推奨修正**: {具体的な修正方法}
### 推奨事項
- {追加すべきテスト}
- {設定変更}
- {アーキテクチャ上の改善}
| 観点 | requesting-code-review | differential-review | /review-respond |
|---|---|---|---|
| 目的 | 一般的なコードレビュー | セキュリティ特化レビュー | Copilotレビュー対応 |
| タイミング | 機能完了時・PR作成前 | セキュリティ変更時 | PR作成後 |
| フォーカス | 可読性・設計・ロジック | 脆弱性・攻撃経路・暗号 | レビューコメント対応 |
git コマンドが利用可能であること(追加の外部ツール不要)