Cloudflareは、コードベース内のセキュリティ脆弱性を特定するプロセスを自動化するコーディングエージェント・スキルをリリースしました。このツールはコーディングエージェントのためのモジュール式拡張として機能し、多段階のセキュリティ監査のための構造化されたフレームワークを提供します。これはCloudflareの内部脆弱性発見システムの基礎から発展したものであり、単一リポジトリの出発点から、セキュリティ上の欠陥を特定するためのフリート全体に適用可能なシステムへと移行しました。

Cloudflare security-audit-skillプロジェクトのGitHubリポジトリインターフェース
GitHub上のsecurity-audit-skillリポジトリは、自動セキュリティ監査のためのフレームワークを提供します。github.com

この画像は、コーディングエージェント・スキルがホストおよび管理されているオープンソースリポジトリを表しています。

このスキルは、厳格な監査証跡を維持するために設計された6段階のワークフローを通じて動作します。まず、アーキテクチャ、信頼境界、および入力面をマッピングして「カバレッジ台帳」を作成する偵察フェーズから始まります。この台帳は、システムのどの部分が監査されたかを追跡します。「カバレッジ台帳に基づいたハンティング」フェーズでは、システムは台帳から特定のユニットに隔離された「ハンター」エージェントを割り当てます。これらのエージェントはチェック内容を記録し、「カバレッジ批評家」は監査のギャップを特定します。正確性を確保するため、このスキルは敵対的検証を採用しています。すべての固有の候補となる発見事項は、新しい検証エージェントに渡され、そのエージェントの特定の任務は、発見事項が確定される前にそれを論破することです。

高品質でマシン可読な出力を維持するために、このスキルは発見事項を「confirmed(確定)」、「needs_validation(検証が必要)」、「rejected(却下)」の3つの異なる判定に分類します。発見事項は、完全なソーストレースと境界のある観測結果がある場合にのみ「confirmed」としてマークされます。このシステムの重要な技術的制約は、OSによって強制されるサンドボックスへの依存です。ワークフローでは発見事項を検証するためにターゲットコードを実行する必要があるため、エージェントは外部ネットワークを無効化しリソース制限を強制する安全な環境なしには、リードを「needs_validation」から「confirmed」に移動させることができません。これらの制御がない場合、システムは監査プロセス中に潜在的に悪意のあるコードの安全でない実行を防ぐために、デフォルトで「needs_validation」ステータスに設定されます。