構成コマンド (Linux™ と macOS)
構成コマンドを使用して、スキャンするファイルを準備します。
appscan.sh prepare
構文:
appscan.sh prepare -c <configuration_file> -d <save_path> -es, --enableSecrets -jdk <jdk_path> -l <log_path> -n <file_name> -nc, --noConfigFile -oso -s <value> -sco,--sourceCodeOnly -so, --secretsOnly -t,--thirdParty -v,--verbose -X,--debug説明:
オプションのフラグ/設定:
-c: このオプションは、スキャンの構成に使用します。-d:-d <save_path>と指定します。<save_path>には IRX ファイルの保存先ディレクトリーが入ります。-dr, --dryrun:-dr or --dryrunを指定してスキャン対象を見つけて検証しますが、.irxファイルは生成しません。-ds, --disableSecrets:-dsまたは--disableSecretsを指定して、シークレットのスキャンを無効にします。シークレット・スキャンは組織レベルで有効または無効になりますが、-dsをここで使用すると、組織の設定を上書きできます。-es, --enableSecrets:-esまたは--enableSecretsを指定して、秘密のスキャンを有効にします。シークレット・スキャンは組織レベルで有効または無効になりますが、-esをここで使用すると、組織の設定を上書きできます。-jdk:-jdk <jdk_path>と指定して、デフォルトの JDK 17 の代わりに使用される JDK インストールへのパスを指定します。構成ファイル (-c <configuration_file>) とjdk_path属性の両方を使用した場合は、構成ファイルで指定された値が優先されます。-l:-l <log_path>と指定します。<log_path>にはログ・ファイルの保存先ディレクトリーが入ります。-n:-n <file_name>と指定します。<file_name>には IRX ファイルの名前が入ります。ファイル名を指定する際に、ファイル拡張子 .irx は付けても付けなくてもかまいません。ファイル拡張子なしで指定すると、ファイル生成時に自動的に拡張子が付けられます。-nc, --noConfigFiles: ソフトウェア・コンポジション分析 (SCA) の設定ファイルの処理を無効にします。-oso: SCA パッケージで既知の脆弱性のみを探すには、-osoを指定します。-osoを指定した場合、AppScan on Cloud はパッケージでの静的分析を実行しません。注: ユーザーがオープン・ソース・ライセンスを持っている場合、SCA 分析はデフォルトで静的スキャンに含まれます。このオプションでは、分析が SCA の脆弱性に限定されます。SCA のみの分析を利用するには、オープン・ソース・ライセンスを持っている必要があります。-s:-s <value>と指定して、スキャンの速度と深さを指定します。<value>にはsimple、balanced、deep、またはthoroughが入ります。コマンド行で指定しスキャンの速度は、AppScan Go! で選択できるスキャンの速度に対応しています。simpleスキャンでは、ファイルの表面レベルの分析を実行して、修復に最も急を要する問題を特定します。完了に要する時間が最も短いスキャンです。balancedスキャンでは、中程度の詳細レベルでセキュリティー問題の分析および特定を行うことができ、「simple」スキャンよりは完了までに多少時間がかかります。deepスキャンでは、ファイルをさらに完全な分析を実行して脆弱性を特定することから、通常、完了までの時間は長くなります。thoroughスキャンでは、包括的な分析を実行して、最も包括的な脆弱性リストを特定するため、完了までの時間は最も長くなります。注: スキャンの速度は、コードで検出された脆弱性の相対数と相関するとは限りません。例えば、simpleスキャンでレポートされる可能性のある誤検出がthorough分析では除外されるため、レポートされる脆弱性が少なくなることがあります。
注: このオプションのパラメーターは大文字小文字を区別します。スキャンの速度が指定されていない場合は、クライアント・ユーティリティーはdeepスキャンをデフォルトで実行します。-sao: 静的分析のみを実行する場合は-saoを指定します。-saoを指定した場合、AppScan on Cloud はパッケージでのオープン・ソース分析を実行しません。-sco, --sourceCodeOnly:-scoまたは--sourceCodeOnlyを指定して、ソース・コード・ファイルのみをスキャンします。この設定では、.dll、.exe、.jar、.warなど、サポートされている他のファイル・タイプのスキャンが無効になります。ソース・コードのみのスキャンは、ソース・コードへのアクセス権限のみを持っている場合、より高速なスキャンを実行したい場合、またはスキャンの深さよりも速度を優先したい場合に便利です。ビルド出力へのアクセス権限のみを持っている場合、またはスキャンの速度よりも深さを優先する場合は、代替スキャン・オプションを選択します。
注: 組み込まれているソース・コードのみのファイル・タイプのリストについては、「静的分析の言語サポート 」を参照してください。-so, --secretsOnly:-soまたは--secretsOnlyを指定して、ソース・コードの秘密のみをスキャンします。シークレット・スキャンは組織レベルで有効または無効になりますが、-soをここで使用すると、組織の設定を上書きできます。-t, --thirdParty: デフォルトで、サードパーティーの Java と .NET コードは、IRX ファイルの生成中にスキャンされません。「サード・パーティーの Java と .NET の除外管理」の指示に従って、サードパーティーのコードの除外設定を変更できます。サード・パーティーのコードを含めるには、prepareコマンドを発行するときに-tまたは--thirdPartyオプションを指定します。サード・パーティー・コードがスキャンで標準的に除外されるようにする開発者の場合、この設定を使用してサード・パーティー・コードをスキャンに含める必要があります。
-v,--verbose:-vまたは--verboseを指定すると、IRX ファイルの生成中により多くの出力情報が表示されます。-X,--debug:-Xまたは--debugを指定すると、デバッグ・モードでコマンド全体が実行されます。デバッグ・モードで実行すると、トラブルシューティング用のログ・ファイルがより多く生成されます。
例:
この構成ファイル (/root/Desktop/my_config_files/my_config.xml) を使用し、IRX ファイルを /root/Desktop/my_irx_files -n my_scan.irx に保存する IRX ファイルを生成するには、次のコマンドを実行します。
appscan.sh prepare -c /root/Desktop/my_config_files/my_config.xml -d /root/Desktop/my_irx_files -n my_scan.irxappscan.sh prepare_sca
構文:
appscan prepare_sca -d <save_path> -l <log_path> -n <file_name> -X, -debug -container <container> -image <image> 説明:
appscan.sh prepare -oso を実行したのと同じになります。オプションのフラグ/設定:
-d:-d <save_path>と指定します。<save_path>には IRX ファイルの保存先ディレクトリーが入ります。-l:-l <log_path>と指定します。<log_path>にはログ・ファイルの保存先ディレクトリーが入ります。-n:-n <file_name>と指定します。<file_name>には IRX ファイルの名前が入ります。ファイル名を指定する際に、ファイル拡張子 .irx は付けても付けなくてもかまいません。ファイル拡張子なしで指定すると、ファイル生成時に自動的に拡張子が付けられます。-X,--debug:-Xまたは--debugを指定すると、デバッグ・モードでコマンド全体が実行されます。デバッグ・モードで実行すると、トラブルシューティング用のログ・ファイルがより多く生成されます。-container:-container <container>と指定します。<container>は、分析する Docker コンテナーです。値には、コンテナー名、コンテナー・ダイジェスト、またはローカル・アーカイブへのパスを指定できます。-image:-image <image>と指定します。<image>は、分析する Docker イメージです。値には、イメージ名、イメージ・ダイジェスト、またはローカル・アーカイブへのパスを指定できます。
appscan.sh package
構文:
appscan.sh package -d <save_path> -f <assessment_file> -n <file_name>説明:
オプションのフラグ/設定:
-d:-d <save_path>と指定します。<save_path>には IRX ファイルの保存先ディレクトリーが入ります。-f:-f <assessment_file>と指定します。<assessment_file>には、スキャン用にパッケージ化する .ozasmt ファイルが入ります。現行ディレクトリーに<assessment_file>ファイルがない場合は、このオプションを使用して評価ファイルのパスとファイル名を指定します。注: このオプションが必要なのは、以下の記述のいずれかまたは両方が当てはまる場合のみです。- コマンドを発行するディレクトリーに複数のアセスメント・ファイルが含まれている。ディレクトリーに含まれている評価ファイルが 1 つのみであれば、
-fオプションが使用されていない場合は、そのファイルがパッケージされます。 - コマンドを発行するディレクトリーにアセスメント・ファイルが 1 つも含まれていない。この場合は、
-fオプションを使用して、パッケージする評価ファイルのパスおよびファイル名を指定する必要があります。
- コマンドを発行するディレクトリーに複数のアセスメント・ファイルが含まれている。ディレクトリーに含まれている評価ファイルが 1 つのみであれば、
-n:-n <file_name>と指定します。<file_name>には IRX ファイルの名前が入ります。ファイル名を指定する際に、ファイル拡張子 .irx は付けても付けなくてもかまいません。ファイル拡張子なしで指定すると、ファイル生成時に自動的に拡張子が付けられます。
例:
/root/Desktop/my_irx_files ディレクトリーで、次のコマンドを実行して、この評価ファイル (/root/Desktop/my_assessment_files/my_assessment.ozasmt) を含む IRX ファイルを生成できます。
appscan.sh package -f /root/Desktop/my_assessment_files/my_assessment.ozasmt結果として得られる IRX ファイルは /root/Desktop/my_irx_files に保存されます。
appscan.sh get_pubkey
構文:
appscan.sh get_pubkey -d <save_path>説明:
インターネットに接続されていないコンピューターで使用するためには、公開暗号鍵をダウンロードします。
インターネットに接続されているコンピューターから IRX ファイルを生成している場合は、prepare コマンドを発行するときに暗号鍵が自動的にダウンロードされるため、このコマンドは不要です。コンピューターに暗号鍵が既に存在する場合は、prepare コマンドを発行すると、必要に応じて暗号鍵が更新されます。
ただし、インターネットに接続されていないコンピューターから IRX ファイルを生成している場合は、このコマンドを使用して暗号鍵をダウンロードできます。その後、IRX ファイルの生成時に使用するために、インターネットに接続されていないコンピューターに暗号鍵をコピーできます。そのコンピューターで暗号鍵を使用するには、rsa.pub ファイル名を維持し、そのファイルを抽出された SAClientUtil_<version>_<os>.zip ファイルの config ディレクトリーに置きます (<version> は コマンド行ユーティリティー の現在のバージョンです)。
prepare コマンドを再発行すると、暗号鍵が自動的に更新されます。ご使用のコンピューターがインターネットに接続されていない場合は、get_pubkey コマンドを使用する必要があります。オプションのフラグ/設定:
-d:-d <save_path>と指定します。<save_path>には、暗号鍵の保存先ディレクトリーが入ります。このオプションが指定されていない場合、鍵は、抽出されたSAClientUtil_<version>_<os>.zipファイルの config ディレクトリーに保存されます。