統合開発環境におけるスキャン

静的分析プラグインを Eclipse、IntelliJ IDEA、または Visual Studio 統合開発環境 (IDE) にインストールした後、そのプラグインを使用してソース・コードをスキャンする方法を以下に示しています。Eclipse では、Java プロジェクトをスキャンできます。Visual Studio では、.NET (C#、ASP.NET、VB.NET) をスキャンできます。

始める前に

デフォルトで、サード・パーティー・コードは Java と .NET のスキャン時に含まれません。サード・パーティーの Java と .NET の除外管理 の手順に従って、サード・パーティーのコードの除外設定を変更できます。
  • Eclipse または Visual Studio でのスキャン時にサード・パーティーのコードを含めるには、次のいずれかの方法を使用します。
    • ID を開始するまえに、以下のグローバル変数またはシステム環境変数を設定します。
      APPSCAN_OPTS=-DthirdParty
    • IDE を使用するごとに、IDE 始動前にコマンドを実行します。
      set APPSCAN_OPTS=-DthirdParty
  • Eclipse でスキャンする場合は、次のような方法もあります。Eclipse を始動する前に eclipse.ini ファイルを変更し、-vmargs セクションに -DthirdParty を含めます。

サード・パーティー・コードがスキャンで標準的に除外されるようにする開発者の場合、この設定を使用してサード・パーティー・コードをスキャンに含める必要があります。

さらに、-Dscan_speed=<speed>APPSCAN_OPTS とともに使用すると、スキャン速度を指定できます。例えば、スキャン速度を balanced に設定するには、以下のようにします。
  • Windows:
    set APPSCAN_OPTS=-Dscan_speed=balanced
  • Linux および Mac:
    export APPSCAN_OPTS="-Dscan_speed=balanced"
デフォルトのスキャン速度は deep です。

手順

ソース・コードをスキャンし、アセンブリーまたはレポートを開く方法:
  1. プラグインが IDE にインストールされていることを確認します。インストール中に IDE が開いていた場合は、再始動してください。
  2. スキャンする項目を選択します。
    • Eclipse で、スキャンするプロジェクトを選択します。Eclipse ワークスペース全体をスキャンするには、すべてのプロジェクトを選択します。
    • Visual Studio で、スキャンするソリューション、プロジェクトまたはウェブサイトを選択します。
  3. 選択した項目を右クリックし、「セキュリティー分析」 > 「静的分析の実行」の順に選択します。
    まだサービスにログインしていなければ、「ログイン」ダイアログ・ボックスが開きます。
    注: コードをスキャンするか、IRX ファイルを生成する際に、最新の Static Analyzer コマンド行ユーティリティー への更新に関するメッセージを受け取ることがあります。「コマンド行ユーティリティー (CLI) のサポート」を参照してください。
  4. 「ログイン」ダイアログ・ボックスに、サービスの資格情報を入力します。
    AppScan on Cloud サービスで API 鍵を生成すると、キー IDキーの秘密を受け取ります。これらの値を「ID」フィールドと「秘密」フィールドに入力します。まだ API 鍵を生成していない場合は、作成するためにダイアログ・ボックスのリンクに従います。
    サービスにログインすると、暗号化された鍵ファイルが作成されます。このトークン・ファイルは、ASoC サービスと対話するときに、他のアクションによって参照されます。
  5. スキャンの開始後、スキャンと関連付けるアプリケーションを選択するように求めるダイアログ・ボックスが AppScan on Cloud に表示されます。IDE 内の静的分析スキャンは既存の AppScan on Cloud アプリケーションと関連付ける必要があります。
  6. 同じダイアログ・ボックスで、「個人スキャン」チェック・ボックスを使用し、そのスキャンが個人スキャンかどうかを指定します。
  7. スキャンが送信されると、「マイ・スキャン」ビューが開かれます。
  8. スキャンが完了すると通知が開き、「スキャンの問題」を開くためのリンクが示されます。さらに、「マイ・スキャン」ビューが更新されてスキャンが追加されます。このビューには、スキャン名、ステータス、スキャンの開始時刻と終了時刻、検出された脆弱性の数と重大度がリストされます。
    1. 「スキャンの問題」: 通知内のリンクを選択するか、またはビュー内の「スキャンの問題」列にあるアイコンをダブルクリックし、結果を開きます (Visual Studio ではシステム・トレイを使用して結果を開くこともできます)。これにより、スキャン中に検出された非準拠のセキュリティー問題が修正グループ別にすべて表示されたインタラクティブな評価が開きます。修正グループは、検出結果フローをグループ化した最も一般的なノードを表しています。通常、修正グループに対して修正を実装すると、少ない労力で最大の効果を得ることができます。修正グループは論理グループ化ポイントとしても考えられ、関連する検出結果を同時に確認できます。注意する点として、修正グループは修正を行うべき場所にないことがあります。今後行うリファクタリング、コード・プラクティス、その他の要因によって、修正にその修正グループの場所を利用できないことがあります。

      評価の内容:

      • 各修正グループには、推奨される修正場所、その修正場所のソースを開くリンク、脆弱性、およびソース・コードが修正された場合に修正される脆弱性のオカレンスの数が表示されます。
      • 脆弱性を選択すると、その説明が開きます (通常は、例や推奨も表示されます)。
      • 「詳細」ボタンを選択すると、ソース・コードが修正された場合に修正されるすべての検出結果の修正グループが開かれます。詳細ビューでソース・ロケーションを選択すると、そのロケーションがソース・エディターで開かれます。トレース・アイコンを選択すると、アプリケーションのデータのフローを表示するトレースが開きます。
  9. アプリケーションの非準拠問題を開く方法:
    注: 非準拠問題とは、AppScan on Cloud でアプリケーションに指定されたポリシーに準拠していない問題のことです。
    1. 「表示」 > 「セキュリティー分析」 > 「アプリケーションの問題」の順に選択します。
    2. プロンプトが表示されたら、サービス資格情報を入力します。
    3. 結果のダイアログ・ボックスのドロップダウン・リストからアプリケーションを選択し、「OK」をクリックします。

タスクの結果

重要: 再スキャンは、統合開発環境ではサポートされていません。