コンテンツにスキップ

ヒットのグルーピングとサンプリング

攻撃を分析する際には、不正リクエストがどのように提示されるかを理解することが重要です。Wallarmは攻撃一覧を簡潔にするためにヒットのグルーピングとサンプリング手法を使用します。本記事ではこれらの手法について説明します。

ヒットのグルーピング

Wallarmは、ヒットを1つの攻撃にまとめるために次の2つのグルーピング方法を使用します:

  • 基本グルーピング

  • 送信元IPによるヒットのグルーピング

これらの方法は相互排他的ではありません。ヒットが両方の条件を満たす場合は、すべて同一の攻撃にグルーピングされます。

基本グルーピング

攻撃タイプ、悪意のあるペイロードを含むパラメータ、送信先アドレスが同一であればヒットはグルーピングされます。ヒットは同一または異なるIPアドレスから送られていてもよく、同一の攻撃タイプ内であっても悪意のあるペイロードの値が異なる場合があります。

このヒットのグルーピング方法は基本であり、すべてのヒットに適用され、無効化や変更はできません。

送信元IPによるヒットのグルーピング

送信元IPアドレスが同一であればヒットはグルーピングされます。グルーピングされたヒットに異なる攻撃タイプ、悪意のあるペイロード、URLが含まれる場合、攻撃一覧では攻撃パラメータに[multiple]タグが付与されます。

このヒットのグルーピング方法は、Brute force、Forced browsing、BOLA (IDOR)、Resource overlimit、Data bomb、Virtual patchの各攻撃タイプを除くすべてのヒットに適用されます。

ヒットがこの方法でグルーピングされている場合、その攻撃に対してはMark as false positiveボタンおよびactive verificationオプションは利用できません。

送信元IPによるグルーピングは、Wallarm Console→Triggersでデフォルトで有効になっており、15分間に単一のIPアドレスから50件を超えるHitsが発生したときに作動するHits from the same IPというデフォルトトリガーで実現します.

ヒットのグルーピング用トリガーの例

送信元IPによるグルーピングは要件に合わせて調整できます。Hits from the same IPタイプのカスタムトリガーを作成してください。任意のカスタムトリガーを作成するとデフォルトトリガーは削除され、すべてのカスタムトリガーを削除するとデフォルトが復元されます。デフォルトトリガーを一時的に無効化してグルーピングを一時停止することもできます。

ヒットのサンプリング

攻撃の詳細を生成する際、Wallarmは分析しやすいように、ユニークなヒットのみを表示し、ユニークでない(同等または同一の)ヒットはWallarm Cloudへのアップロードから除外して表示しません。この処理をヒットのサンプリングと呼びます。

ヒットのサンプリングは攻撃検知の品質には影響せず、処理の低下を避けるのに役立ちます。ヒットのサンプリングが有効な場合でも、Wallarmノードは攻撃の検知およびブロックを継続します。

Hits sampling is enabledという通知が表示されていると、現在サンプリングが動作していることを示します。この通知をクリックするか、検索フィールドにsampledを追加すると、サンプリングが適用された攻撃のみを表示できます。攻撃の詳細では、検出されたものの表示されなかった類似ヒットの数が確認できます:

ドロップされたヒット

攻撃一覧でのドロップ済みヒットの表示

ドロップされたヒットはWallarm Cloudにアップロードされないため、攻撃一覧に一部のヒットや攻撃全体が表示されない場合があります。

ドロップされたリクエストもWallarmノードで処理されたリクエストであるため、ノード詳細UIのRPS値はドロップされるたびに増加します。Threat Preventionダッシュボード上のリクエスト数およびヒット数にも、ドロップされたヒットの数が含まれます。

ヒットのサンプリングが有効な場合

  • 入力検証タイプの攻撃では、ヒットのサンプリングは既定で無効です。トラフィックに占める攻撃の割合が高い場合、サンプリングはextremeregularの2段階で順に実行されます。

  • 振る舞いタイプの攻撃Data bombおよびResource overlimitingの攻撃では、既定でregularサンプリングアルゴリズムが有効です。Extremeサンプリングは、トラフィックに占める攻撃の割合が高い場合にのみ開始されます。

  • denylistされたIPからのイベントについては、サンプリングはノード側で設定されます。同一のリクエストは最初の10件のみをCloudにアップロードし、残りのヒットにはサンプリングアルゴリズムを適用します。

トラフィックに占める攻撃の割合が低下すると、サンプリングは自動的に無効になります。

Extremeサンプリング

Extremeサンプリングアルゴリズムの基本ロジックは次のとおりです:

  • ヒットが入力検証タイプの場合、アルゴリズムはユニークな悪意のあるペイロードのみをCloudにアップロードします。1時間内に同一ペイロードのヒットが複数検出された場合は、そのうち最初の1件のみをCloudにアップロードし、残りはドロップします。

  • ヒットが振る舞いData bombResource overlimitingタイプの場合、アルゴリズムは1時間内に検出されたヒットのうち最初の10%のみをCloudにアップロードします。

Regularサンプリング

Regularアルゴリズムは、振る舞いData bombResource overlimitingタイプのヒットを除き、Extreme段階で保存されたヒットのみを処理します。これらのタイプでExtremeサンプリングが無効な場合は、Regularアルゴリズムが元のヒット集合を処理します。

Regularサンプリングアルゴリズムの基本ロジックは次のとおりです:

  1. 各1時間ごとに最初の5件の同一ヒットをWallarm Cloudのサンプルとして保存します。残りのヒットはサンプルには保存されませんが、その件数は別パラメータに記録されます。

    以下のパラメータがすべて同じ値であれば、そのヒットは同一と見なします:

    • 攻撃タイプ
    • 悪意のあるペイロードを含むパラメータ
    • 宛先アドレス
    • リクエストメソッド
    • レスポンスコード
    • 送信元IPアドレス
  2. ヒットのサンプルは、イベント一覧で攻撃にグルーピングされます。