カスタムスキャンルールの例外を作成する
特定のルールが複数の過検知を報告している事が確実であり、これらの検知に対して頻繁にステータスを問題無しに指定している場合は、カスタムスキャンルールの例外を作成します。
開始する前に
ルールの例外を作成する前に、基準とするスキャンを実行して、過検知を引き起こしているルールを判断します。
ルールを例外にすると、スキャンプロジェクトの結果に影響します。
スキャンルールの場所
Contrast Scanルールセクションは、各言語のルールを見つけることができるテーブルにリンクしています。または、スキャンの進行中に、Contrast Scanローカルエンジンでスキャンするソースディレクトリの下の target/engines/sast-engine4/rulesets
でルールを見つけることができます。
重要
sast-engines4
フォルダとそのサブフォルダは、スキャンの進行中に一時的に使用できます。
簡単にアクセスできるように、rulesets
フォルダのコピーを作成します。このフォルダには、Contrast Scanローカルエンジンがサポートする各言語(qaking_{lang}_security.xml
)のセキュリティルールファイルが含まれています。ファイル内のルールの名前を検索するには、<rule name=" "
を検索します。
手順
contrastsec.checks.config
というテキストファイルを作成し、スキャンするプロジェクトのルートに配置します。ファイルの書式は以下の通り:
[rule-Engine-rule-ID] active=false
複数のルールを例外とするには、各ブロックの間に空の行を挟んで、行のブロックを繰り返します。例えば、Detect and handle input/output errors 、およびCPPのDon’t use castルールを例外にするには、ファイルは以下のようになります:
[OPT.CPP.CERTC.FIO33] active=false [OPT.CPP.DontUseCast] active=false
スキャンルールの例外の効果
contrastsec.checks.config
ファイルを使用してルールを無効にすると、例外ルールに対応する検知結果のステータスが修復済に変更されます。
contrastsec.checks.config
ファイルを使用してルールを再度有効にするか、ファイルを削除すると、新しく有効にしたルールに対応する検知結果のステータスが再オープンに変わります。
Contrast Scanのルール
以下の表は、サポートされているContrast Scanのルールです: