Home Blogs Edgio WAAPルール–混沌からの順序の作成
Applications

Edgio WAAPルール–混沌からの順序の作成

About The Author

Outline

私の日は、現在および潜在的な顧客からの質問でいっぱいです。 私が回答するのが大好きなのは、WebアプリケーションとAPI保護(WAAP)とセキュリティルールセットが非常に正確になっている理由です。 過去数年間に発生した新たな攻撃ベクトルや脆弱性を考慮する場合、正確性は非常に重要です。 実際、サイバーセキュリティおよびインフラストラクチャセキュリティ庁(CISA)は最近、既知の脆弱性悪用カタログに新たな脆弱性を 66で 追加し ました。新しいCVEは2022年に前年比25%以上増加しました。 セキュリティとパフォーマンスについて懸念しているのはCISAだけではありません。 最近の調査によると、企業は誤検出、誤検出、アラート疲労、セキュリティ管理の改善を求めています。

では、Edgio WAAPルールをより効果的にする理由は何でしょうか。 高レベルでは、WAAPルールを実行する特別な順序と、マネージドルールを使用したハイブリッドシグネチャと異常スコアリングモードに関係して います。 当社では、これらのプロセスを自社開発のWAFLZエンジンを使用してミリ秒以内に実行し、パフォーマンスを犠牲にすることなくセキュリティを提供しています。 これについて詳しく見ていきましょう。

玉ねぎの皮をむく

マネージドルールの内部の仕組みを確認する前に、WAAPの保護のさまざまなレイヤー(なじみのあるもの)を見てみましょう。 WAAPのすべてのレイヤが重要な役割を果たします。 以下に、その機能の概要を示します。

アクセス制御ルール

アクセス制御ルールは、モジュラ式の許可リスト、拒否リスト、およびポジティブセキュリティアクセスリストを作成して、IPアドレス、匿名プロキシ、国、ASN、地域コード、 ユーザエージェント、cookie、リファラ、URL、HTTP要求メソッド、 コンテンツタイプ、ファイル拡張子、ファイルサイズ、リクエストヘッダー。

レート制限ルール

レート制限ルールは、WAAPで保護されたアプリケーションへのHTTP要求のフローを制限して、悪意のあるまたは意図しないアプリケーションDDoSトラフィックを防止し、攻撃や予期しないトラフィックスパイクによる要求で顧客のアプリケーションサーバが過負荷になるのを防ぎます。

Bot Managerルール

Bot Managerは、良いボットと悪いボットの両方を検出します。 不要な自動化や不良ボットを軽減し、アプリケーションに到達するのを防ぐための複数のオプションを提供します。 これにより、資格情報の盗み取り、コンテンツのスクレイピング、カードの送信、フォームのスパム、DDoS攻撃の開始などの悪意のあるボットからサイトを保護します。 アドフラウドを行うことです

カスタムルール

カスタムルール強力なWAAPエンジンを手に入れて、独自のセキュリティルールを作成します。 悪意のあるトラフィックは、変数の組み合わせ(要求ヘッダー、本文、クエリー、メソッドなど)を使用して識別されます。 URL、Cookieなど)。 この方法では、脅威検出の柔軟性が向上し、特定の悪意のある要求をフィルタリングして、それらを軽減するためのアクションを実行できます。 迅速なテストと導入を組み合わせたカスタム脅威識別機能により、仮想パッチを作成することで、長期的なゼロデイ脆弱性に迅速に対処できます。

管理ルール

Edgioのマネージドルールは、Edgioが管理する独自のルールセットを介して悪意のあるトラフィックを識別します。
管理対象ルールは、次の3つのカテゴリにまたがる500上のルールで構成されます。

  1. Edgio独自のルール。

  2. アプリケーション固有の高度なルール。

  3. 一般的なOWASPルール。

これにより、さまざまな攻撃カテゴリおよびアプリケーションのさまざまなセキュリティポリシーとルールが包括的に収集されます。 脅威評価を実行する際には、各管理対象ルールをカスタマイズして、特定の変数(Cookie、ヘッダー、リクエストパラメータ/クエリー文字列)を除外することで誤検知を防止できます。

ご覧のように、WAAPルールには多くのレイヤーがあり、各レイヤー内には、WAAPを実行する必要がある数十から数百のルールと条件が存在する可能性があります。 各ルールは、誤検知が発生し、パフォーマンスに影響を与える可能性を示します。 問題を複雑にするのは、Edgio WAAPがデュアルWAAPモードで実行する独自の機能を提供していることです。デュアルWAAPモードでは、実稼働トラフィックに対して2つのバージョンのセキュリティ設定を同時に実行し、アクセス制御ルール、カスタムルール、および管理ルールを実行できます。 セキュリティソリューションの強化に伴い、保護レイヤーを追加していきます。 これらすべての機能とルールが混沌としている中で、WAAPが何百万もの要求を正確かつ効率的に処理するにはどうすればよいのかという疑問が生じます。

混沌からのオーダーの作成

高性能マルチテナント環境で拡張するために特別に設計された強力な自社開発のWAFLZエンジンを持つことに加えて、WAAPを最も効率的かつ効果的に実行するための適切な操作順序を作成することが重要です。

これを実現するために、WAAPでは、次の順序でルールモジュールのさまざまなレイヤを実行します。

  1. アクセス制御ルール: すべての要求は、前述の変数で構成される、お客様が設定した許可/拒否/アクセスリストの静的なセットによってフィルタリングされます。 WAAPは拒否リストに一致する要求をドロップし、不要なトラフィックがそれ以上処理されるのを防ぎます。

  2. レート制限ルール: アクセスコントロールルールを通過した要求は、レート制限ルールによって追跡されます。レート制限ルールは、設定で指定された時間枠内の各クライアントの要求を追跡します。 WAAPは、特定の要求レートしきい値を超える要求をドロップし、要求ボリュームを次のステップに進めることができなくなります。

  3. Bot Managerルール: このステップに到達する各リクエストは、リクエストシグネチャと動作の組み合わせに基づいてボットベースかどうかを判断するために、当社のMLプラットフォームによって検査されます。 悪意のあるボットリクエストは、ブラウザーチャレンジ、カスタムレスポンス、キャプチャなど、さまざまな手段で軽減できます。 ほとんどの攻撃は自動化されたクライアントを介して行われるため、ボットマネージャーはこれらの攻撃を軽減し、後続のルールモジュールで処理する必要がある要求の量をさらに減らすための効果的なソリューションになります。

  4. カスタムルール: このステップでは、WAAPは、顧客が作成したさまざまなカスタムフィルタを使用して要求を検査し、不要な要求を検出して軽減します。 これには、管理対象のWAAPルールセットが更新されるのを待たずにゼロデイ脆弱性を軽減するために、リアルタイムで導入できるアプリケーション固有のルールが含まれます。 これは、特定の攻撃に対する可視性と制御を得るための非常に貴重なツールです。 カスタムルールは特殊なため、Edgioで管理されるルールよりも優先され、最終レイヤーに渡す前にリクエストを処理します。

  5. マネージドルール: この段階に達するリクエストは、Edgio独自のカテゴリ、高度なアプリケーション固有のカテゴリ、および一般的なOWASPカテゴリにわたるマネージド500以上のルールによって処理されます。

図1:Edgio WAAPワークフロー

すべてのリクエストを順番に処理する(図に示すように、1)は複数のフィルタリングレイヤーが実行されるようにします。 これにより、リクエストがManaged Rulesに到達する前に、お客様が探している攻撃(例:拒否されたIP /国、アプリケーションDDoS / HTTPフラッド、自動クライアント、特定のカスタムリクエストシグネチャ)をキャプチャすることができます。

しかし、これはセキュリティの話の一部にすぎません。

WAAPの有効性は、攻撃を緩和する能力(真の陽性)だけでなく、正当なトラフィックがブロックされるのを防ぐ能力(偽の陽性)によっても決定されます。 では、誤検知を減らしながら、ほとんどのアプリケーション攻撃をどのように捕捉しているかを確認しましょう。

Edgio管理ルールの詳細

リクエストがマネージドルールに到達すると、幅広いアプリケーション攻撃を軽減するために作成された500ルール以上の独自のEdgioルールセットによって評価されます。 これは、非常に多くのカテゴリのルール(汎用SQLインジェクション(SQLi)、クロスサイトスクリプティング(XSS)、リモートコード実行(RCE)ルール)と、特定のWordPress、Joomla、Apache Strutsルールがあるため、複雑なレイヤーが追加されます。 正確性を最大化するためには、相互に補完するように、慎重な優先順位付けが必要です。

前述のルールモジュールと同様に、キーは管理対象ルールセットの各カテゴリ間の操作の順序です。

マネージドルール内では、要求は次の順序でさまざまなルールカテゴリによって処理されます。Edgio Proprietary Rules > Advanced Application-Specific Rules > Generic OWASP Rules。

  1. Edgio Proprietary RulesとApplication-Specific Rulesは、特定の種類のアプリケーションの特定の脆弱性に関連するシグネチャを探します。 これらのルールは、アプリケーション(Apache Struts、WordPress、Joomla、Drupal、 SharePoint、cPanelなど)を使用し、これらのアプリケーションに対する攻撃を非常に正確に検出できます。 これらのルールは、署名(別名バイナリ)モードで実行されるように設計されています。つまり、これらのルールをトリガーする要求があれば、アクションが発生します。 これらのルールは、特定の攻撃ベクトルをアプリケーションにマッチングしてフィルタリングするためのより外科的なアプローチを提供します。したがって、これらのルールはEdgioルールセットフィルタの最初のレイヤーとなります。 独自のルールとアプリケーション固有のルールに一致しないリクエストは、お客様のアプリケーションにリスクをもたらす可能性があるため、次のフェーズで潜在的な攻撃を検出するための別のアプローチが必要です。

  2. Edgio Ruleset内のGeneric OWASP Rulesは、さまざまな一般的な攻撃カテゴリ(SQLi、XSS、RCE、プロトコル違反、 ローカル・ファイル・インクルージョン(LFI)、リモート・ファイル・インクルージョン(RFI)など)。 これらのルールは連携して、要求が攻撃カテゴリに適合するシグニチャの組み合わせを示しているかどうかを判断します。 これらの一般的なルールは、異常スコアのしきい値を調整してルールの感度を定義し、要求を悪意のあるものと見なすためにトリガーする必要があるルールの数を制御できる異常スコアリングモードで実行されます。 異常スコアのしきい値が低いほど、汎用ルールセットの感度が高くなり、悪意のある可能性のある要求がしきい値を超えやすくなります。 お客様は、アプリケーションの種類とリスク許容度に基づいて、WAAPの感度を柔軟に調整できます。 一般的なOWASPルールは、特定の攻撃特性に適合するが、必ずしも特定のアプリケーションの脆弱性に適合しない要求の最終的なキャッチオールとして機能します。

図2:当社のマネージドルールは、検出を最大化し、誤検出を最小限に抑えるために特別に設計されたシーケンスで実行されます。

管理対象ルールの精度を高めるもう1つの重要な機能は、ルールのカスタマイズ性です。 500以上のマネージドルールのそれぞれをカスタマイズして、特定のリクエストパラメータ(リクエストヘッダー、クッキー、クエリ、およびボディパラメータ)を無視することができます。 これにより、お客様はシンプルなユーザーインターフェイスまたはAPIを使用して、誤検知を迅速に削除できます。

すべてのピースを組み合わせることで

これで、私たちのWAAPを介したHTTPリクエストの旅が始まりました。 当社の高性能WAAPは、コンテンツ配信サービスを実行するのと同じスタック上でネイティブに実行されるため、世界中のすべての300 PoPのすべてのEdgioサーバー内で毎日数十億回発生します。 このブログの冒頭で、私は私たちのWAAPについて多くの質問を受けると述べました。 他のソリューションとの違いをご理解いただけたと思います。 さまざまなWAAPルールモジュール(ACLからレート制限、ボットルール、カスタムルールまで)、マネージドルール(特定ルールから汎用ルールまで)、ハイブリッドシグネチャと異常スコアリングモードを組み合わせて、パフォーマンスを妨げないセキュリティを実現します。

この例えを考えてみましょう。WAAPコンポーネントの設計と組み立ては、ハンバーガーを作るようなものです。 それは単に正しい材料を持っていることだけではありません。それは素晴らしい食事を作るために正しい方法でそれらを組み合わせることです。 同じ材料を別々に組み合わせることで、味や顧客体験に大きな影響を与える可能性があります。