DDoS 攻撃との戦いは変化し続けています。 F5 Labs は、 2023 年の DDoS 攻撃の傾向に関するレポートで、分散型サービス拒否(DDoS) 攻撃に関する過去 3 年間のデータを分析し、攻撃者は依然として複雑なマルチベクトル DDoS 攻撃を使用しているものの、より純粋にアプリケーション層 (レイヤー 7) 攻撃を開始するようにシフトしていることを発見しました。 2022 年だけでも、レイヤー 7 攻撃の発生率は 165% 増加しました。
通常、攻撃者は、Web サイトの操作を妨害したり、ターゲットを脅迫したりするなど、目的を達成するために最も簡単な方法を追求します。 レイヤー 7 攻撃の増加は、ボリューム型またはプロトコル型の戦略のみを使用して DDoS 攻撃を開始することが難しくなり、アプリケーション層攻撃がより効果的であることが証明されていることを示している可能性があります。
DDoS 攻撃からアプリケーションを防御する場合、アプリケーションの可用性 (およびユーザーの満足度) を維持する可能性を最大限に高めるために、可能な限りテクノロジーの進歩を活用することが重要です。 eXpress Data Path (XDP) テクノロジーを採用した拡張 Berkeley Packet Filter (eBPF) は 2014 年から存在していましたが、マイクロサービスとクラウドネイティブ アーキテクチャの採用が増えたことにより、現在では開発者、SRE、運用コミュニティの間で人気が急上昇しています。
eBPF は、Linux カーネル内のデータリンク層仮想マシン (VM) であり、ユーザーがプログラムを安全かつ効率的に実行できるようにします。 また、カーネルのソースコードを変更したり、カーネルモジュールを追加したりすることなく、実行時にカーネルの機能を拡張します。eBPF はイベントトリガーであり、Linux ホスト上の特定のアクティビティを検出し、特定のアクションを実行します。 このテクノロジーは、マイクロサービスとエンドユーザー間の接続とトランザクションを追跡する機能を備え、アプリとアプリ サービスに対するフルスタックの可視性を提供します。 利用可能なデータの範囲は非常に広範囲です。 高度な可観測性に対応し、ネットワーク トラフィック管理とランタイム セキュリティのニーズを分析し、基本的な効率的な設計を使用してコンピューティング コストを削減する機能を備えています。
eBPF テクノロジーの概要については、F5 DevCentral のビデオ「eBPF とは?」をご覧ください。
XDP は、高性能ネットワークの利点を提供します。 これにより、ユーザー空間プログラムはネットワーク パケット データを直接読み書きし、カーネル レベルに到達する前にパケットの処理方法を決定できるようになります。 このテクノロジーにより、開発者は Linux カーネル内のネットワーク デバイス ドライバーによって実装された低レベル フックに eBPF プログラムを接続できるようになります。
NGINX App Protect DoS は、 NGINX Plus および NGINX Ingress Controller 上で実行される、高度な動作ベースのレイヤー 7 DDoS 緩和ソリューションであり、 SlowlorisやHTTP Floodなどの攻撃から HTTP および HTTP/2 アプリを防御します。 つまり、NGINX App Protect DoS は、単純なネットワーク DDoS ソリューションでは検出できないアプリケーション層攻撃から保護します。
eBPF は、NGINX App Protect DoS と併用することで、DDoS 攻撃の吸収能力を大幅に強化することが期待できます。 NGINX App Protect DoS は、ソース IP アドレスのみ、または TLS フィンガープリントと組み合わせて識別される悪意のあるアクターからのトラフィックをブロックすることで、緩和パフォーマンスを高速化する多層ソリューションの一部として eBPF (NGINX Ingress Controller 自体では利用できません) を使用します。
次に、NGINX App Protect DoS が異常検出、動的ルール作成と適応学習、ルール適用という3 つのフェーズでどのように機能するかの基本的な仕組みを見てみましょう。
NGINX App Protect DoS は、保護されたアプリケーションを継続的に監視し、機械学習を使用してアプリケーションとクライアントの動作の統計的なサイト モデルを構築します。 トラフィックをリアルタイムで監視し、300 を超える HTTP リクエスト メトリックを追跡して、アクティビティとパフォーマンスの継続的に更新される包括的なベースラインを作成します。 NGINX App Protect DoS は、アプリケーション トラフィックをパッシブに監視するだけでなく、アクティブなアプリケーションのヘルス チェックも実行し、応答時間やドロップされたリクエストなどのメトリックを監視します。
アプリケーションがレイヤー 7 DDoS 攻撃を受けると、アプリケーションの応答時間 (またはエラー率) が学習したモデルから逸脱し、アプリケーション保護システムがトリガーされます。
異常が検出されると、NGINX App Protect DoS は悪意のあるトラフィックを識別してブロックするためのルールを動的に作成します。 悪意のある攻撃者をブロックしながら正当なユーザーがアプリケーションにアクセスできるようにする目的で、クライアントの動作の統計画像を作成し、どのユーザーが攻撃に関与しているかを特定します。
NGINX App Protect DoS は、攻撃をブロックするために動的なシグネチャを展開するだけでなく、緩和効果を継続的に測定し、適応型学習を適用して、堅牢なアプリ セキュリティを常に提供し、ゼロデイ攻撃をブロックします。 攻撃の原因となるクライアントとリクエストが特定されると、そのトラフィックを拒否するルールが作成されます。
NGINX App Protect DoS は、以下を含む多層防御戦略を実装します。
これら 3 つの軽減策は段階的に適用され、正当なユーザーに影響を与えることなく、攻撃者が可能な限りブロックされるようにします。 ただし、ブロッキング アクティビティの大部分は、IP アドレスと TLS フィンガープリントのブロッキングまたは IP アドレスのみのブロッキング フェーズの初期の組み合わせで頻繁に発生します。 幸いなことに、これらは eBPF プログラムによって効果的に適用できる正確なルール タイプです。
NGINX App Protect DoS は作成されたルールを使用し、それを受信アプリケーション トラフィックに適用して悪意のあるリクエストをブロックします。 すべてのアプリケーション トラフィックは NGINX Plus プロキシによってバックエンド (またはアップストリーム) アプリケーションにプロキシされるため、ブロッキング ルールに一致するリクエストは単にドロップされ、バックエンド アプリケーションに渡されません。
NGINX Plus は高性能プロキシですが、攻撃や緩和ルールによって作成された追加のワークロードが、NGINX が実行されているプラットフォームの利用可能なリソースを圧倒する可能性があります。 ここで eBPF が登場します。 IP アドレスのみのブロックを適用するか、カーネル内で IP アドレスと TLS フィンガープリントのブロックと組み合わせることで、悪意のあるトラフィックをトランスポート層 (レイヤー 4) で早期に評価してブロックできます。 これは、ユーザー空間で実行される NGINX によって実行される場合よりもはるかに効率的です。
サポートされているプラットフォームでは、NGINX App Protect DoS が送信元 IP アドレスまたは TLS フィンガープリントに基づいて攻撃者をブロックするルールを作成すると、そのルールは eBPF バイトコード プログラムにコンパイルされ、ネットワーク イベント (フックと呼ばれる) が発生したときにカーネルによって実行されます。 特定のネットワーク イベントによってルールがトリガーされると、トラフィックはレイヤー 4 で早期にドロップされます。 これにより、レイヤー 7 に到達する前に DDoS 緩和を加速できます。 このアクティビティはすべてカーネル内で行われるため、非常に効率的であり、ルールがユーザー空間で実装されている場合よりも多くのトラフィックをフィルタリングできます (リソースを使い果たす前に)。
NGINX App Protect DoS 高速緩和は、次の Linux ディストリビューションで利用できます。
高速 DDoS 緩和を有効にするには、次の手順に従います。
NGINX Plus 設定のhttp{}
ブロックに次のディレクティブを追加します。
protect_dos_accelerated_mitigation をオン;
NGINX 構成を再ロードします。
$ sudo nginx -t && nginx -s リロード
NGINX App Protect DoS の適応学習機能と eBPF カーネル実行の高効率トラフィック処理を組み合わせることで、今日のマルチベクトルおよびアプリケーション中心の DDoS 攻撃に対応する機能が向上した、多層的で高速化されたレイヤー 7 DDoS 軽減戦略が実現します。 さらに、特定の DDoS 攻撃を軽減するために必要なリソースを削減することで、インフラストラクチャとコンピューティングのコストも抑えられます。
30 日間の無料トライアルで NGINX App Protect DoS を実際に試用するか、弊社にお問い合わせの上、使用事例についてご相談ください。
「このブログ投稿には、入手できなくなった製品やサポートされなくなった製品が参照されている場合があります。 利用可能な F5 NGINX 製品およびソリューションに関する最新情報については、 NGINX 製品ファミリーをご覧ください。 NGINX は現在 F5 の一部です。 以前の NGINX.com リンクはすべて、F5.com の同様の NGINX コンテンツにリダイレクトされます。"