- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
ASM は自動的に、X-Forwarded-For
のようなよく知られたヘッダーから、http.client_ip
を解決しようとします。もし、このフィールドにカスタムヘッダーを使用したり、解決アルゴリズムをバイパスしたい場合は、DD_TRACE_CLIENT_IP_HEADER
環境変数を設定します。この変数が設定されている場合、ライブラリはクライアント IP の指定されたヘッダーのみをチェックします。
多くの重大な攻撃は、最も機密性の高いエンドポイントにアクセスできる認証されたユーザーによって実行されます。疑わしいセキュリティアクティビティを生成している悪質なユーザーを特定するには、標準化されたユーザータグを使用してサービスをインスツルメンテーションすることにより、ユーザー情報をトレースに追加します。ルートスパンにカスタムタグを追加したり、インスツルメンテーション関数を使用したりすることができます。詳細については、ユーザーアクティビティの追跡を参照してください。
ASM のシグナル、つまり不審なリクエストが誤検出される場合があります。例えば、ASM が同じ不審なリクエストを繰り返し検出し、シグナルが発生したが、そのシグナルは確認され、脅威ではないことがあります。
パスリストにエントリーを追加して、ルールからイベントを無視することで、ノイズの多いシグナルパターンを排除し、正当に疑わしいリクエストに焦点を当てることができます。
パスリストエントリーを追加するには、次のいずれかを実行します。
注: パスリストエントリーに一致するリクエスト (トレース) は請求されません。
Datadog で収集するデータには、除外、難読化、フィルタリング、修正したり、収集しないことを選択したりするべき機密情報が含まれることがあります。さらに、データは脅威検出が不正確になったり、サービスのセキュリティが Datadog で正確にされないという問題の原因となるシンセティックトラフィックを含む場合もあります。
デフォルトでは、ASM は疑わしいリクエストから情報を収集し、そのリクエストが疑わしいと判定された理由を理解するのに役立ちます。データを送信する前に、ASM はデータが機密であることを示すパターンとキーワードをスキャンします。データが機密であると判断された場合、それは <redacted>
フラグに置き換えられます。これにより、リクエストは疑わしいが、データセキュリティの懸念からリクエストデータを収集されなかったことがわかります。
ユーザーのデータを保護するために、ASM では機密データスキャンがデフォルトで有効になっています。以下の環境変数を使用することで、構成をカスタマイズすることができます。スキャンは RE2 構文に基づいています。スキャンをカスタマイズするには、これらの環境変数の値を有効な RE2 パターンに設定します。
DD_APPSEC_OBFUSCATION_PARAMETER_KEY_REGEXP
- 値が一般的に機密データを含むキーをスキャンするためのパターン。見つかった場合、そのキーと関連する値およびすべての子ノードが編集されます。DD_APPSEC_OBFUSCATION_PARAMETER_VALUE_REGEXP
- 機密データを示す可能性のある値をスキャンするためのパターン。見つかった場合、その値とすべての子ノードが編集されます。また、コードでスキャンパターンを構成することも可能です。
Datadog.configure do |c|
# ...
# カスタム RE2 正規表現を設定する
c.appsec.obfuscator_key_regex = '...'
c.appsec.obfuscator_value_regex = '...'
end
以下は、デフォルトで機密と判定されるデータの例です。
pwd
、password
、ipassword
、pass_phrase
secret
key
、api_key
、private_key
、public_key
token
consumer_id
、consumer_key
、consumer_secret
sign
、signed
、signature
bearer
authorization
BEGIN PRIVATE KEY
ssh-rsa
Datadog Agent やライブラリの他のメカニズムで、機密データを削除するために使用できるものについては、APM データセキュリティを参照してください。
ASM を無効にするには、アプリケーションの構成から DD_APPSEC_ENABLED=true
環境変数を削除します。削除したら、サービスを再起動します。
さらにサポートが必要な場合は、Datadog サポートにお問い合わせください。
The blocked requests feature JSON or HTML content. If the Accept
HTTP header is pointing to HTML, like text/html
, the HTML content is used. Otherwise, the JSON one is used.
Both sets of content is embedded in the Datadog Tracer library package and loaded locally. See examples of the templates for HTML and JSON in the Datadog Java tracer source code on GitHub.
The HTML and JSON content can both be changed using the DD_APPSEC_HTTP_BLOCKED_TEMPLATE_HTML
and DD_APPSEC_HTTP_BLOCKED_TEMPLATE_JSON
environment variables within your application deployment file. Alternatively, you can use the dd.appsec.http.blocked.template.html
or dd.appsec.http.blocked.template.json
configuration entries.
Example:
DD_APPSEC_HTTP_BLOCKED_TEMPLATE_HTML=<path_to_file.html>
By default, the page shown in response to a blocked action looks like this: