本項の目的
本項では、WebGoat(意図的に脆弱性を持たせたWebアプリケーション)にContrastエージェントを設定する手順について説明します。Contrastの機能を試しに利用する場合や、手始めにContrastを使ってみる場合などの参考にしてください。
手順
- WebGoatを入手します。ここでは、WebGoat 8.0.0.M21を使用します。
メモ:ご利用の環境により追加でJava8(Oracle JDKやOpenJDK8)が必要な場合があります。 - Contrastエージェントを入手します。Contrastエージェントをアプリケーションに追加することにより、Contrastのセンサーが組み込まれ、アプリケーションの脆弱性が検出されます。Contrastエージェントの入手方法はいくつかありますが、本項ではContrast UI(インターフェイス)から手動で行います。Contrast UIにログインして、エージェントを追加ボタンをクリックします。
- エージェントタイプを選択のプルダウンリストでJava を選択択し、エージェントをダウンロードボタンをクリックします。contrast.jarファイルのダウンロードが始まります。
- contrast.jarファイルのダウンロードが完了したら、次の画面へ進みます(スキップボタンで進みます)。ステップ2では、デフォルト(基本の設定ファイルをダウンロード)を選択したまま、設定ファイルをダウンロードボタンをクリックして、contrast_security.yamlをダウンロードします。
- 必要に応じて、Contrastの設定ファイルをカスタマイズします。例えば、contrast_security.yamlに以下のようにContrastエージェントの設定オプションを追加して、Contrastに報告する際のアプリケーション名やサーバ名を変更します(Javaエージェントの各オプションの詳細についてはこちら)。
agent:
java:
standalone_app_name: WebGoatDemo
application:
path: "/WebGoat"
server:
name: "My Server"
- WebGoatにContrastエージェントを組み込むには、以下のコマンドを実行してWebGoatを起動するだけです。
java -javaagent:/path/to/contrast.jar -Dcontrast.config.path=/path/to/contrast_security.yaml -jar /path/to/webgoat-server-8.0.0.M21.jar --server.port=8082
メモ: この起動コマンドの例では、--server.portオプションでWebgoatのデフォルトポートの8080を変更しています。 - ブラウザを開き、http://localhost:8082/WebGoatにアクセスします。Register new userのリンクをクリックして、ユーザを登録します。
- 登録したユーザでWebGoatにログインし、左のナビゲーションからいくつかレッスンを選択して実行します。
- Contrast UIにログインします。