このページは日本語には対応しておりません。随時翻訳に取り組んでいます。翻訳に関してご質問やご意見ございましたら、お気軽にご連絡ください。

You can monitor application security for Java apps running in Docker, Kubernetes, Amazon ECS, and AWS Fargate.

前提条件

1 クリック有効化
サービスがリモート構成を有効にした Agent とそれをサポートするトレーシングライブラリのバージョンで実行されている場合、ASM Status 列の Not Enabled インジケーターにカーソルを合わせ、Enable ASM をクリックします。DD_APPSEC_ENABLED=true または --enable-appsec のフラグを使ってサービスを再起動する必要はありません。

Enabling threat detection

Get started

  1. Update your Datadog Java library to at least version 0.94.0 (at least version 1.1.4 for Software Composition Analysis detection features):

    wget -O dd-java-agent.jar 'https://dtdg.co/latest-java-tracer'
    
    curl -Lo dd-java-agent.jar 'https://dtdg.co/latest-java-tracer'
    
    ADD 'https://dtdg.co/latest-java-tracer' dd-java-agent.jar
    

    To check that your service’s language and framework versions are supported for ASM capabilities, see Compatibility.

  2. Run your Java application with ASM enabled. From the command line:

    java -javaagent:/path/to/dd-java-agent.jar -Ddd.appsec.enabled=true -Ddd.service=<MY SERVICE> -Ddd.env=<MY_ENV> -jar path/to/app.jar
    

    Or one of the following methods, depending on where your application runs:

    Note: Read-only file systems are not currently supported. The application must have access to a writable /tmp directory.

    Update your configuration container for APM by adding the following argument in your docker run command:

    docker run [...] -e DD_APPSEC_ENABLED=true [...]
    

    Add the following environment variable value to your container Dockerfile:

    ENV DD_APPSEC_ENABLED=true
    

    Update your deployment configuration file for APM and add the ASM environment variable:

    spec:
      template:
        spec:
          containers:
            - name: <CONTAINER_NAME>
              image: <CONTAINER_IMAGE>/<TAG>
              env:
                - name: DD_APPSEC_ENABLED
                  value: "true"
    

    Update your ECS task definition JSON file, by adding this in the environment section:

    "environment": [
      ...,
      {
        "name": "DD_APPSEC_ENABLED",
        "value": "true"
      }
    ]
    

    Set the -Ddd.appsec.enabled flag or the DD_APPSEC_ENABLED environment variable to true in your service invocation:

    java -javaagent:dd-java-agent.jar \
         -Ddd.appsec.enabled=true \
         -jar <YOUR_SERVICE>.jar \
         <YOUR_SERVICE_FLAGS>
    

    この構成が完了すると、ライブラリは、アプリケーションからセキュリティデータを収集し、Agent に送信します。Agent は、そのデータを Datadog に送信し、すぐに使える検出ルールによって、攻撃者のテクニックや潜在的な誤構成にフラグが立てられるため、是正措置を講じることができます。

  3. Application Security Management の脅威検出の動作を見るには、既知の攻撃パターンをアプリケーションに送信してください。例えば、次の curl スクリプトを含むファイルを実行して、Security Scanner Detected ルールをトリガーします。

    for ((i=1;i<=250;i++)); 
    do
    # Target existing service’s routes
    curl https://your-application-url/existing-route -A dd-test-scanner-log;
    # Target non existing service’s routes
    curl https://your-application-url/non-existing-route -A dd-test-scanner-log;
    done

    : dd-test-scanner-log の値は、最新のリリースでサポートされています。

    アプリケーションを有効にして実行すると、数分後に Application Signals Explorer に脅威情報が表示されVulnerability Explorer に脆弱性情報が表示されます**。

If you need additional assistance, contact Datadog support.

Further Reading