attack-path-analysis について
攻撃経路、影響、報告対象性を証拠に基づいて評価するセキュリティ分析スキルです。単独レビューと所定のスキャン手順に対応し、制御策や反証、方針上の判断も記録します。
主な機能
- 01リポジトリの証拠から攻撃経路を追跡
- 02制御策と反証の評価
- 03影響、可能性、深刻度の調整
- 04候補ごとの判断を記録
活用シーン
- 01リポジトリ内のセキュリティ所見の確認
- 02セキュリティスキャン候補の評価
- 03無視または保留する所見の理由を記録
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ openai/ codex-security --skill attack-path-analysisインストール後、Claude Code で/attack-path-analysisを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/attack-path-facts.mdseverity-policy.md詳細
セキュリティ攻撃経路の分析
提示された各検出結果について、裏付けのある攻撃者経路が存在するか、どのような影響があるか、報告対象となるかを判断します。ファイルを作成または保持する前に、../../references/artifact-storage.md を読んでください。
攻撃経路を確立する
スキャンフェーズでは、../../references/scan-artifacts.md にあるスキャンごとの脅威モデルと候補セットを使用します。提示された入力パスはそのまま保持してください。必要なスキャン成果物を利用できない場合は、不足している入力を報告してください。
スタンドアロン分析では、提示された検出結果、リポジトリ、脅威モデルまたはセキュリティポリシー、およびコンテキストを使用します。スキャンごとの成果物は必須ではありません。重要な前提を明示し、有意義な評価ができなくなる場合に限り、不足しているコンテキストを尋ねてください。
- 対象範囲内の攻撃者、影響を受ける製品のサーフェス、エントリーポイント、制御可能な入力、セキュリティ境界、および機密性の高い操作を特定します。リポジトリの証拠に基づいて経路を追跡してください。
- 関連する制御と、最も有力な反証を特定します。それらが何を裏付けるのか、どの前提条件が残っているのか、主張された境界を実際に越えるのかを説明してください。
- これらの事実から影響と可能性を評価し、references/severity-policy.md を適用します。事実、重大度の評価、および最終的なポリシー判断を、結果の中で区別できるようにしてください。
- 無視または保留にした候補を含め、対象となるすべての候補について明確な判断を返します。裏付けのある事例を隣接する別の検出結果で置き換えたり、その根本となる制御の位置を見失ったりしないでください。
リポジトリの証拠と、明示的に提示されたコンテキストを使用してください。ネットワークへのアクセスはユーザーが明示的に許可した場合に限ります。オフラインスキャンではネットワークにアクセスしません。裏付けのない攻撃チェーンを作り出してはいけません。デプロイ状況や公開インバウンド経路を示す証拠がなくても、裏付けのある検出結果が否定されるわけではありませんが、確信度が制限される場合があります。
スキャンとの連携
標準スキャンと Deep Scan ワーカーは、それぞれの通常の標準スキャンワークフロー内で攻撃経路を評価します。どちらも、この独立したフェーズ用スキルは呼び出しません。
Compact Workbench Diff
Workbench を使用する $security-diff-scan に scanId がある場合:
list_codex_security_candidates({ scanId, cursor?, limit? })を使用して、スキャンごとの脅威モデルと検証済み候補をすべて読み込みます。reportableまたはdeferredの検証候補をすべて分析します。候補の識別情報と既存の検出・検証フィールドを保持してください。- すべての判断を
record_candidate_attack_paths({ scanId, attackPaths: [{ candidateId, attackPath }] })とともに送信します。このフェーズに進む候補がない場合は、attackPaths: []を送信してください。このツールは保存された候補の順序を保持します。 - これらのネストされた判断がフェーズの完全な出力です。重複するレポート、受領記録、または手動台帳を作成しないでください。
その他のフェーズベースのスキャン
../../references/scan-artifacts.md にある、アクティブなワークフローのレポートと受領記録のパスを使用します。このフェーズに進む候補ごとに、ID、事実または正確な証拠の不足点、およびレポート参照を含む明確な判断と受領記録が必要です。無視する候補は、残存する検出結果のセットから除外する前に記録してください。
リポジトリ全体または指定パスのスキャンでは、検出段階で明確な検出番号が割り当てられていない場合でも、reportable または survives: yes と記された検証完了行を含めてください。検証で提示された、影響を受けるエントリーポイント/ラッパー、根本となる制御、シンク、および具体的な実装の位置を保持してください。
出力
単独で分析する場合は、呼び出し元の形式に従うか、各所見について簡潔な評価を返してください。スキャンフェーズでは、上記の出力契約に従ってください。以下を含めます。
- タイトルと、提示された候補、インスタンス、台帳の各識別情報;
- 影響を受ける正確な場所、および攻撃者から影響に至る手順;
- references/attack-path-facts.md に記載された関連事実;
- 制御策、反証となる情報、前提条件、重大な証拠の不足;
- 影響、可能性、調整後の重大度、およびその理由を添えた最終的なポリシー判断。
採用された所見と抑制された所見の両方を説明できるだけの証拠を保持してください。発見のやり直しや別の攻撃シナリオへの置き換えではなく、確認された事実に重大度ポリシーを適用してください。