バックログをトリアージする
既存のセキュリティ検出結果をリポジトリと照合してレビューし、後続作業の優先順位を決めます。
$codex-security:triage-finding を使用して、既存のセキュリティ検出結果を現在のリポジトリと照合してレビューします。このワークフローでは、読み取り専用の静的解析を行います。Codex は各検出結果を未証明の主張として扱い、コードを実行せずにリポジトリ内の証拠を調査します。
評価対象のリポジトリをスコープとする Codex プロジェクトから、このワークフローを実行します。 Codex がリポジトリのソースコードを読み取れる必要があります。Jira と Linear のコネクターから検出結果データを取得できますが、GitHub の検出結果には認証済みの GitHub REST アクセスが必要です。いずれもソースコードへのアクセスの代わりにはなりません。
これは、コードのビルドや実行、テストや概念実証の作成、実際のインターフェースの操作によって、検出事項を再現したり反証したりできる
$codex-security:validation とは異なります。既存のバックログを分類し、優先順位を付けるには、トリアージを使用してください。静的な証拠だけでは判断できない検出事項を、実行時の証拠で解決できる場合は、検証を使用してください。
トリアージする検出結果を選択する
次のソースから、一つの検出結果または検出結果のコレクションを指定できます。
| ソース | 提供する情報 | 要件 |
|---|---|---|
| 貼り付けた検出事項またはローカルの検出事項 | SARIF の結果、CVE または GHSA、アドバイザリ、スキャナーのチケット、バグバウンティのレポート、Codex Security の検出事項の成果物、または自然言語で記述された脆弱性の指摘。 | コネクターは不要です。 |
| Jira または Linear | セキュリティまたは脆弱性に関する課題の正確な URL や識別子、Jira JQL、または Linear のチーム、プロジェクト、検索フレーズ。Codex はトリアージ前に、選択した課題の内容を取得します。 | 読み取り権限のある Atlassian Rovo 経由の Jira または Linear。 |
| GitHub | リポジトリと、検出事項のソースを 1 つ指定します。コードスキャン、Dependabot の脆弱性とマルウェア、セキュリティアドバイザリと非公開の脆弱性レポート、またはすべてのソースから選びます。リポジトリを指定しない場合、Codex は現在の Codex プロジェクトに紐づく GitHub リポジトリがあれば使用します。GitHub Issues はデフォルトでは含まれません。特定の Issue を指定するか、GitHub Issues を明示的にリクエストしてください。 |
gh auth token、GH_TOKEN、GITHUB_TOKEN などによる認証済みの GitHub REST アクセスと、選択したリポジトリおよび検出事項の種類を読み取る権限。 |
Codex は入力順に、指定された検出結果ごとに一つの結果を保持するため、各ソースの検出結果を追跡できます。重複しているように見える検出結果も、統合したり削除したりしません。
読み取り専用のトリアージを実行する
貼り付けた検出結果またはローカルの成果物には、次のようなプロンプトを送信します。
Use $codex-security:triage-finding to triage these existing security findings against this repository:
[Paste the findings or provide the artifact path.]Jira または Linear の issue では、対象となる issue セットを指定し、ソースシステムを読み取り専用に保ちます。
Use $codex-security:triage-finding to import and triage the security findings from [Jira or Linear issue URLs, identifiers, or query] against this repository.
Do not change the source issues.GitHub の検出結果では、リポジトリとソースを指定します。
Use $codex-security:triage-finding to import and triage [code scanning, Dependabot vulnerabilities and malware, security advisories and private vulnerability reports, or all] from [owner/repository] against this repository.現在の Codex プロジェクトに関連付けられた GitHub リポジトリを使用するには、検出結果のソースだけを指定します。
Use $codex-security:triage-finding to import and triage [code scanning, Dependabot vulnerabilities and malware, security advisories and private vulnerability reports, or all] from GitHub against this repository. Use the GitHub repository attached to the current Codex project.Codex は現在のソースと適用対象の SECURITY.md ポリシーを確認し、入力されたすべての検出事項に対して判定を返します。指摘を裏付ける証拠と反証する証拠の両方を、未解決の疑問点とともに記録します。
結果をレビューする
| 判定 | 意味 |
|---|---|
confirmed |
リポジトリの証拠から、記載された前提条件のもとで脆弱なパスに到達でき、サポート対象のセキュリティ境界を越えることが確認できます。 |
not_actionable |
影響を受けないバージョン、到達不能なパス、有効なガード、または出荷されない対象領域が示されるなど、リポジトリの証拠によって主張が否定されています。 |
needs_review |
必要な情報が欠けている、曖昧である、ランタイム、環境、またはポリシーに依存しているため、リポジトリの証拠だけでは判断できません。 |
優先順位を使って、どの confirmed の検出事項から修正し、どの
needs_review の検出事項から調査するかを決めます。優先順位はグループごとに付けられます。
判定の根拠を、影響を受けるコードや攻撃者側の前提条件と併せて確認してください。優先順位に従って対応する前に、指摘に対する証拠と未解決の疑問点を確認してください。ここでの confirmed は、リポジトリの静的な証拠に裏付けられていることを意味し、アプリケーションを実行して再現したことを意味するものではありません。
トリアージ結果をレビューした後、Codex に更新を依頼しない限り、 Jira、Linear、その他のバックログの記録は変更されません。
次のステップ
confirmed: 人が検出事項を修正対象として受け入れたら、$codex-security:fix-findingを使用して修正し、検証します。トリアージでは、そのままプロンプトとして使える引き継ぎ情報を用意しますが、スキルを自動で呼び出すことはありません。needs_review: コードを実行すれば立証に必要な証拠の不足を解消できる場合は、$codex-security:validationを使用して、実行中のコードに対して検出事項をテストします。トリアージ結果から、検出事項の指摘内容、影響箇所、前提条件、静的な証拠、立証に不足している証拠を渡してください。
Use $codex-security:validation to dynamically validate finding [triage item ID or source ID] from the backlog triage result. Reproduce or disprove the finding, record what you tested, and list any remaining uncertainty.トリアージと異なり、検証ではコードのビルドや実行、テストや概念実証の作成、実際のインターフェースの操作を行う場合があります。実行の制御については、Codex の承認とセキュリティポリシーを参照してください。
needs_review: 検出事項の判断が製品ポリシーやデプロイ環境に依存する場合は、コードを変更する前に、列挙された未解決の疑問点に回答してください。not_actionable: 証拠をトリアージの記録とともに保管してください。Codex が元のチケットを自動でクローズしたり更新したりすることはありません。- 提供したバックログ以外の脆弱性を探すには、セキュリティスキャンを実行してください。