マネージド型の分散サービス妨害 (DDoS) からの保護サービス、WAF (Web Access Firewall)、コンテンツ配信ネットワーク (CDN) を使用した保護と軽減手法

DDoS 保護を試す
bnr_security_380x186

サービス拒否 (DoS) 攻撃とは、ウェブサイトやアプリケーションなどのターゲットシステムの可用性に影響を及ぼそうとする、正規のエンドユーザーに対する悪意のある試みのことです。通常、攻撃者は大量のパケットやリクエストを生成し、最終的にターゲットシステムに重大な損傷を与えます。分散サービス妨害 (DDoS) 攻撃の場合、攻撃者は複数の感染したまたは制御されたソースを使用して攻撃を生成します。

一般的に、DDoS 攻撃は、攻撃対象の開放型システム間相互接続 (OSI) モデルのレイヤーによって分類されます。最も一般的なものは、ネットワーク (レイヤー 3)、トランスポート (レイヤー 4)、プレゼンテーション (レイヤー 6) およびアプリケーション (レイヤー 7) です。


# レイヤー 適用 説明 ベクトルの例
7 適用 データ アプリケーションへのネットワークプロセス HTTP フラッド、DNS クエリフラッド
6 プレゼンテーション データ データ表現と暗号化 SSL 悪用
5 セッション データ ホスト間通信 該当なし
4 トランスポート セグメント エンドツーエンドの接続と信頼性 SYN フラッド
3 ネットワーク パケット パス決定および論理アドレス指定 UDP 反射攻撃
2 データリンク フレーム 物理アドレス指定 該当なし
1 物理 ビット メディア、シグナル、およびバイナリ転送 該当なし

これらの攻撃に対する軽減手法を検討する際、攻撃をインフラストラクチャレイヤー (レイヤー 3 および 4) 攻撃とアプリケーションレイヤー (レイヤー 6 および 7) 攻撃に分類することをお勧めします。

インフラストラクチャレイヤー攻撃

通常、レイヤー 3 および 4 への攻撃は、インフラストラクチャレイヤー攻撃に分類されます。これらは、DDoS 攻撃の最も一般的なタイプであり、同期 (SYN) フラッドや、ユーザーデータグラムパケット (UDP) フラッドなどのその他の反射攻撃が含まれます。通常、これらの攻撃は大容量で、ネットワークまたはアプリケーションサーバーの容量に過負荷を与えることを目的としています。しかし、これらの攻撃には明確な特徴があり、検出しやすいタイプでもあります。

アプリケーションレイヤー攻撃

レイヤー 6 およびレイヤー 7 への攻撃は、多くの場合、アプリケーションレイヤー攻撃に分類されます。これらの攻撃はそれほど一般的ではありませんが、より高度な攻撃である傾向があります。これらの攻撃は通常、インフラストラクチャレイヤー攻撃と比較してボリュームは小さくなりますが、アプリケーションの特定の損害が大きくなる部分が攻撃される傾向があるため、実際のユーザーが使用できなくなります。例えば、ログインページや高価な検索 API への大量の HTTP リクエスト送信や、Wordpress XML-RPC フラッド (Wordpress ピンバック攻撃とも呼ばれます) などがあります。

攻撃対象領域の削減

DDoS 攻撃を軽減する最初の手法の 1 つは、攻撃を受ける対象領域を最小化することによって攻撃者の選択肢を制限し、1 つの場所で保護を構築できるようにする方法です。アプリケーションまたはリソースが、通信を想定していない場所からポート、プロトコル、またはアプリケーションに公開されていないことを確認する必要があります。そのため、可能な限り攻撃のポイントを最小化し、軽減への対応に集中できるようにします。場合によっては、計算リソースをコンテンツ配信ネットワーク (CDN)ロードバランサーの背後に配置し、直接インターネットトラフィックをデータベースサーバーなどのインフラストラクチャの特定部分のみに制限することによって、これを行うことができます。それ以外の場合は、ファイアウォールやアクセス制御リスト (ACL) を使用して、アプリケーションに到達するトラフィックを制御します。

スケーリングの計画

大規模なボリューメトリック DDoS 攻撃を軽減するための 2 つの重要な考慮事項は、攻撃を吸収して軽減する帯域幅容量 (またはトランジット容量) とサーバー容量です。

トランジット容量。アプリケーションの構築時に、ホスティングプロバイダーが大量のトラフィックを処理するのに十分な冗長性のあるインターネット接続を提供していることを確認してください。DDoS 攻撃の最終的な目標はリソース/アプリケーションの可用性に影響を及ぼすことであるため、それらをエンドユーザーの近くに配置するだけでなく、大量のトラフィックの発生中もユーザーがアプリケーションに簡単にアクセスできる大規模なインターネットエクスチェンジの近くにも配置する必要があります。また、コンテンツ配信ネットワーク (CDN) を利用したり、コンテンツを提供し、エンドユーザーに近い場所から頻繁に送信される DNS クエリを解決するネットワークインフラストラクチャの追加レイヤーを提供する高度な DNS 解決サービスを利用することにより、ウェブアプリケーションはさらに前進できます。

サーバー容量。大半の DDoS 攻撃は大量のリソースを消費するボリューメトリック攻撃であるため、計算リソースを迅速に拡張または縮小できることが重要となります。そのためには、さらに大容量の計算リソースを利用するか、または大容量ボリュームをサポートするより広範なネットワークインターフェイス拡張ネットワーキングなどの機能を備えた計算リソースを利用することが必要です。さらに、ロードバランサーを使用して、リソース間の負荷を継続的にモニタリングおよび移行し、1 つのリソースが過負荷になることを防ぐのも一般的な方法です。

正常なトラフィックと異常なトラフィックの判別

上位レベルのトラフィックがホストに達するのを検出した場合は常に、可用性に影響を与えることなく処理可能な限り多くのトラフィックを受け入れられるようにすることが基本となります。この概念はレート制限と呼ばれます。より高度な保護手法は、個別のパケットそのものを分析することにより、正当なトラフィックのみをインテリジェントに受け入れることができます。そのためには、ターゲットが通常受け取る正常なトラフィックの特性を理解し、各パケットをこの基本と比較できるようにする必要があります。

高度なアプリケーション攻撃に対するファイアウォールのデプロイ

アプリケーションの脆弱性を悪用しようとする SQL インジェクションや CSRF などの攻撃に対しては、ウェブアプリケーションファイアウォール (WAF) を使用することをお勧めします。さらに、これらの攻撃の固有な特質のために、正常なトラフィックを装う、または不正な IP や思いも寄らない地域から送られるといった特長を持つ不正なリクエストに対し、カスタマイズされた軽減策を簡単に作成できる必要があります。場合によっては、たまたま経験豊富なサポートを受けてトラフィックのパターンを学習し、カスタマイズされた保護を作成したために、攻撃の軽減に役立てることができることつこともあるでしょう。

サインアップ

アカウントには AWS 無料利用枠が適用されるため、AWS のプラットフォーム、製品、サービスを無料で実際に試してみることができます。

構築

すべての AWS のお客様は、追加料金なしで AWS Shield Standard の保護の適用を自動的に受けることができます。

AWS Shield を試す