ディープセキュリティスキャンを実行する¶
ディープスキャンは標準スキャンより時間がかかりますが、より徹底的です。ばらつきを抑え、より包括的に検索したい場合に使用します。
まず 標準スキャン を実行します。結果に納得できたら、より徹底した評価のためにディープスキャンを実行します。
標準スキャンとディープスキャンから選択する¶
| 標準スキャン | ディープスキャン | |
|---|---|---|
| 適している用途 | 初回の実行と、リポジトリまたはフォルダーの定期的なレビュー | 標準スキャン後の、より徹底したレビュー |
| ばらつき | 標準 | 低減 |
| 範囲 | リポジトリまたは明示的に指定したフォルダー | リポジトリまたは明示的に指定したフォルダー |
| 実行時間とリソース | 低 | 高 |
| プルリクエストと差分 | 変更レビューのワークフローを使用 | サポート対象外です。代わりに変更レビューのワークフローを使用してください |
ディープスキャンを開始する¶
リポジトリ全体をレビューするには、次を送信します。
モノレポ内の 1 つのコンポーネントを対象にするには、フォルダーを明示的に指定します。
Use $codex-security:deep-security-scan to run a deep security scan of /absolute/path/to/repository/services/payments.
ChatGPT デスクトップアプリでは、対象を絞ったディープスキャンによって、選択したフォルダーが Codebase として解決され、スキャン範囲全体が選択した対象として表示されます。
セットアップと事前チェックを確認する¶
- Scan type が
Codebaseで、Deep scan がオンになっていることを確認します。 - Codebase が、スキャン対象として意図したリポジトリまたは正確なフォルダーであることを確認します。
- 脅威モデルのガイダンスは、具体的な攻撃ベクトル、機密性の高いアプリケーション領域、またはコードから明らかにできないリポジトリのコンテキストに限って追加します。
- Start scan を選択します。
- 機能の事前チェックを確認します。構成変更が提案された場合は、変更内容を正確に確認し、自分の環境に一致する場合のみ Codex に適用させます。再起動が必要だと Codex が伝えた場合は、新しいチャットを開始します。
ディープスキャンには委任されたワーカーと、使用可能なワーカースロットが少なくとも 6 つ必要です。現在のランタイムがこれらの要件を満たしていない場合は、標準スキャンを使用するか、機能の事前チェックに合格するランタイムにタスクを移します。
結果を確認する¶
ディープスキャンでは、標準スキャンと同じ findings workspace と complete scan directory が使用されます。まず report.md から確認します。これは、レポート対象の各 finding に対する詳細レポートと、finding が残っている場合の構造的な hardening portfolio へのリンクです。結果を共有またはアーカイブする際は、リンク先の findings/ ディレクトリと hardening/ ディレクトリをレポートと一緒に保持してください。
finding より先にカバレッジの概要を確認します。ディープスキャンではコードをより広範囲に検索しますが、延期されたサーフェスや証明の不足がある場合は、結論が制限されます。受け入れる finding については、Finding を修正して検証する に進みます。
プルリクエスト、コミット、ブランチ範囲、またはローカルパッチをレビューするには、コード変更をレビューする を使用します。ディープスキャンが差分に焦点を当てたワークフローの代わりになることはありません。