IAST エージェントでの OWASP ベンチマーク

このタスクについて

OWASP ベンチマーク・プロジェクトは、ソフトウェア脆弱性検出ツールを評価する Java テスト・スイートです。AppScan IAST Java エージェントと IAST Python エージェントは OWASP ベンチマークに完全に準拠しています。

AppScan IAST Java エージェントでの OWASP ベンチマークの実行

手順

  1. BenchmarkJava と BenchmarkUtils を https://github.com/OWASP-Benchmark から複製します。
  2. コマンド・プロンプトを開き、BenchmarkUtils ディレクトリーに移動して、mvn install -DskipTests を実行します。
  3. AppScan 360° で、IAST Java セッションを開始し、IAST セッションの開始 の説明にあるように、エージェントの zip をダウンロードします。
  4. zip ファイルのコンテンツを解凍します。
  5. 抽出した JAR で、jar_deployment フォルダー内の secagent.jar を探して、BenchmarkJava\tools\HCL にコピーします。
  6. コマンド・プロンプトで runBenchmark_wHCL.bat を実行します。'[INFO] Press Ctrl-C to stop the container...' というメッセージが表示されるまで待ちます。
  7. 別のコマンド・プロンプトを開いて、BenchmarkJava\runCrawler.bat を実行します。
  8. BenchmarkJava\createScorecards.bat を実行します。
    テスト結果の場所: BenchmarkJava\scorecard\Benchmark_v1.2_Scorecard_for_HCL_AppScan_IAST_v{IAST_version} files
    OWASP ベンチマーク v1.2 結果の比較


AppScan IAST Python エージェントを使用して OWASP ベンチマークを実行する

始める前に

以下の前提条件をダウンロードしてインストールします。これらのインストールは、配置を完了するために必要です。
  1. https://www.python.org/downloads/windows/ の Python 3.12。
  2. https://rustup.rs/ の rust。これはいずれかの OWASP 依存関係に必要です。
  3. https://builds.openlogic.com/downloadJDK/openlogic-openjdk/17.0.18+8/openlogic-openjdk-17.0.18+8-windows-x64.msi の Java 17
  4. https://maven.apache.org/download.cgi#CurrentMaven の Maven。それを C:\Program ファイルに展開し、自分のパスに追加します。

このタスクについて

Windows 環境で以下の手順を使用します。

手順

  1. IAST を使用して OWASP ベンチマークをインストールする:
    1. https://github.com/OWASP-Benchmark/BenchmarkPython から OWASP BenchmarkPython を複製します。
    2. AppScan 360° から IAST Python エージェントをダウンロードします。
      1. ダウンロードしたエージェントを BenchmarkPython フォルダーに展開します。
    3. cd を BenchmarkPython ルート・ディレクトリーに移動し、以下のコマンドを実行します。
      1. python -m venv venv
      2. venv\Scripts\activate
      3. pip install -q -r requirements.txt
      4. IAST エージェントのインストール・スクリプトを実行します: python install_secagent.py
      5. エージェントを使用してベンチマークを実行します。
        1. ベンチマークを実行する前に、BenchmarkPython\results の既存の内容を削除します。
        2. Python エージェント・ラッパーと必要な環境変数を使用して OWASP Benchmark を実行します。
          set IAST_LOG_PATH=results\HCL-IAST.hcl && 
                                  set FINDINGS=true && secagent flask --app app.py run --debug --port 8443 --cert=adhoc
    4. https://127.0.0.1:8443/ で OWASP BenchmarkPython アプリケーションにアクセスできるようになりました。
  2. クローラーを実行してベンチマーク結果を生成する:
    1. https://github.com/OWASP-Benchmark/BenchmarkUtils からOWASP BenchmarkUtils を複製します。
    2. 新しいターミナルで、cd を BenchmarkUtil ルート・ディレクトリーに移動し、以下のコマンドを実行します。
      set "JAVA_HOME=C:\Program Files\OpenLogic\jdk-17.0.18.8-hotspot"&& mvn install 
    3. cd を BenchmarkPython ルート・ディレクトリーに移動し、runCrawler.bat を実行します。クローラーはアプリケーション内のすべてのページを探索しますが、時間がかかる場合があります。完了したら、AppScan 360° の問題を確認します。
    4. スコアカードを作成します。
      1. 以下のコマンドを実行します。
        mvn -Djava.awt.headless=true org.owasp:benchmarkutils-maven-plugin:create-scorecard 
                              -DconfigFile=scoringconfigfile.yaml
      2. 結果は BenchmarkPython\scorecard に表示されます。
      3. ビジュアル・サマリー・ファイルは次のとおりです。Benchmark_v0.1_Scorecard_for_HCL_AppScan_IAST_v1.0.0.html
    OWASP ベンチマーク v0.1 結果の比較

    HCL AppScan IAST の Benchmark v0.1 スコアカード