コードの脆弱性をスキャンして検証する

CodeMender を使用すると、コードベースのソフトウェアの脆弱性を事前にスキャンし、ローカル サンドボックスで概念実証(PoC)の脆弱性利用型不正プログラムを実行して、悪用可能性を確認し、誤検出を排除できます。

脆弱性をスキャンする

コードベース全体で迅速なセキュリティ スキャンを実行するには、cm find を実行します。最適なパフォーマンスを得るには、ターゲット モジュールまたは 10 ~ 50 個のファイルのバッチを一度にスキャンします。

特定のサブディレクトリをスキャンします。

cm find ./src/auth/

サブディレクトリ内の変更されたファイルのみをスキャンします。

cm find --diff ./src/auth/

単一のファイルをスキャンします。

cm find ./src/auth/session_manager.py

スキャン中にインタラクティブな承認プロンプトをスキップします。

cm find ./src/auth/ -y

--diff を使用してプルリクエストをスキャンする方法、またはディープ マルチセッション スキャンを --deep を使用して実行する方法については、CodeMender の検索 モードと CI/CD との 統合をご覧ください。

脆弱性を検証する

CodeMender が潜在的な脆弱性を特定したら、悪用可能性の検証を依頼します。検証中、CodeMender は概念実証(PoC)の脆弱性利用型不正プログラムを生成して実行し(デフォルトのサンドボックス内)、問題が実際に悪用可能かどうかを確認します。

cm report または cm find の出力から finding-id を見つけて、次のコマンドを実行します。

cm verify FINDING_ID

検証フラグ

次のフラグは cm verify を構成します。

フラグ デフォルト 説明
-c, --context TEXT "" エージェントをガイドするステアリング手順またはアプリケーション ドメイン コンテキストを渡します(例: cm verify FINDING_ID -c "Focus analysis on the multi-tenant session validation path")。
--skip-exploit-verification false 検証エージェントが完了した後、PoC 脆弱性利用型不正プログラム スクリプトを再実行せずに、信頼度の高い検出結果を検証済みとしてマークします。エージェントは検証中に PoC 脆弱性利用型不正プログラムを生成して実行します。
--sandbox true この実行でサンドボックスを明示的に有効または無効にします(例: --sandbox=false で無効にします)。
--unrestricted false この実行ですべてのサンドボックス保護を一時的にバイパスし、 ファイル システムの境界と OS レベルのコンテナ分離を無効にします。
-y, --yes false ツールアクションと PoC 脆弱性利用型不正プログラムの実行に関するインタラクティブな確認プロンプト([y/N])をスキップします。コマンドは OS レベルのサンドボックス コンテナ(exebox)内に保持されます。