Semgrepエンジンによる言語のスキャン
Contrastは、Terraform、RustおよびRuby 3.xのソースコード要素を使用するお客様向けに、SemgrepオープンソースSASTスキャナを使用してソースコードをスキャンし、他のサポート対象言語と一緒にその結果をContrastのWebインターフェイスに表示するオプションを提供しています。
手順
Semgrepから、Semgrepエンジンをダウンロードします。
SemgrepエンジンファイルをScanローカルエンジンのJARファイルと同じ場所に配置します。
Contrast Scanローカルエンジンでスキャンを実行します。
Contrast Scanローカルエンジンで、Terraform(TF)ファイル、Rust(RS)ファイル、またはRuby(RBファイル)の存在が検出されると、関連するファイルがSemgrepエンジンに渡されます。Contrast Scanローカルエンジンで、これらの言語のSemgrepのルール(Terraformルール、Rustルール、Rubyルール)を使用して、スキャンされた言語のSARIFファイルが作成されます。
リポジトリ全体のスキャンが完了すると、以下の処理が行われます。
Semgrepエンジンによって作成されたSARIFファイルと、Contrast Scanローカルエンジンによって作成されたSARIFファイルが統合されます。
統合されたSARIFファイルがContrastのWebインターフェイスにアップロードされます。
スキャン結果の分析に記載されている手順に従って、結果を表示して下さい。
Contrastのサポート
Contrastでは、Teraform、Rust、およびRubyのサポートを現状有姿で提供しています。Contrast SASTプラットフォームと統合することなく、Semgrepエンジンを使用してTerraform、Rust、Rubyのファイル(およびその他の言語)をスキャンすることは自由です。Contrastは、これらの言語(Terraform、Rust、Ruby)のファイルがより大きなリポジトリの一部である場合にのみ、便宜上この機能をサポートしています。