AWS Shield で DDoS 攻撃から防御 - Standard と Advanced の使い分け

Standard の無料 L3/L4 防御と Advanced の L7 対応・SRT サポートの違いを整理する。コスト保護とプロアクティブエンゲージメントの活用を紹介します。

Shield の概要

Shield は DDoS 攻撃からアプリケーションを保護するマネージド防御サービスです。Shield Standard は全 AWS アカウントに無料で自動適用され、SYN フラッド、UDP リフレクション、DNS クエリフラッドなどの L3/L4 攻撃を自動緩和します。Shield Advanced は月額 3,000 USD で L7 攻撃への対応と追加機能を提供します。Standard は AWS のグローバルネットワークエッジで動作するため、ユーザー側で設定する必要は一切なく、CloudFrontRoute 53 を経由するトラフィックには自動的に適用されます。

Advanced の機能

Shield Advanced は CloudFront、ALB、Route 53、Global Accelerator、Elastic IP を保護対象として登録し、L7 の HTTP フラッド攻撃を検出・緩和します。SRT (Shield Response Team) は 24/7 で DDoS 攻撃の分析と緩和を支援し、WAF ルールの作成を代行します。コスト保護は DDoS 攻撃によるトラフィック増加で発生した CloudFront、ALB、Route 53、EC2 のスケーリングコストを AWS が補填する機能で、攻撃による予期しないコスト増加を防止します。保護グループ機能で関連リソースをグルーピングし、グループ全体のトラフィックパターンに基づいた異常検知を行うことで、個別リソース単位よりも精度の高い検出を実現します。

Shield Advanced の運用

Shield Advanced のプロアクティブエンゲージメントを有効にすると、DDoS 攻撃の検出時に SRT (Shield Response Team) が自動的に対応を開始します。Route 53 ヘルスチェックを Shield Advanced の保護リソースに関連付けると、アプリケーションの健全性に基づいた検出精度が向上します。Shield Advanced のコスト保護で、DDoS 攻撃によるスケーリングコスト (EC2 Auto Scaling、CloudFront のデータ転送) の増加分を AWS が補填します。攻撃の可視化ダッシュボードで、攻撃のタイプ、規模、期間、緩和状況をリアルタイムに確認できます。 Shield の基礎から応用まで、書籍 (Amazon)で体系的に学べます。

導入判断の基準と WAF との組み合わせ

Shield Advanced の月額 3,000 USD は小規模な環境には高額ですが、以下の条件に 1 つでも該当すれば投資対効果を見込めます。DDoS 攻撃によるダウンタイムがビジネスに直接的な損害 (EC サイトの売上損失、SaaS の SLA 違反) をもたらす場合、攻撃時のスケーリングコスト (ALB、CloudFront、EC2) が月額 3,000 USD を超える可能性がある場合、または 24/7 の DDoS 専門対応チームを自前で維持するコストとの比較で割安な場合です。WAF との関係では、Shield Advanced を有効にすると保護リソースに紐づく WAF の利用料が免除される点が重要です。L7 DDoS 対策には WAF のレートベースルールが必須であり、Shield Advanced と WAF を組み合わせて L3〜L7 の全レイヤーをカバーする設計が推奨されます。WAF のみで L7 攻撃に対応しようとすると、SRT の緊急支援やコスト保護が受けられないため、攻撃が大規模化した際に自力での対応に限界が生じます。

設計のベストプラクティスと落とし穴

Shield Advanced の保護効果を最大化するには、アーキテクチャ設計段階で DDoS 耐性を組み込む必要があります。CloudFront を全トラフィックのフロントに配置することで、L3/L4 攻撃をエッジで吸収し、オリジンサーバーに到達させない設計が基本です。ALB を直接インターネットに公開する構成では Shield Advanced を有効化しても、ALB のスケーリング遅延中にリクエストがドロップされる可能性があります。Route 53 ヘルスチェックの関連付けは見落とされがちですが、これがないとプロアクティブエンゲージメントが発動しません。ヘルスチェックはアプリケーションの実際の可用性 (HTTP 200 応答) を監視する設定が必要で、TCP ポートチェックのみでは攻撃中もヘルシーと判定されて SRT が介入しない場合があります。よくある落とし穴として、Elastic IP を直接保護対象に登録しながら、その背後の EC2 インスタンスに十分なスケーリング設定がないケースがあります。Shield は攻撃を検出・通知しますが、アプリケーション側の耐性が不十分だと緩和が間に合わずサービスが停止する可能性が残ります。

Shield の料金

Shield Standard は全 AWS アカウントで無料で自動有効化されます。Shield Advanced は月額 3,000 ドルの固定料金に加え、保護リソースのデータ転送量で追加課金されます。1 年間のコミットメントが必要です。Organizations で Shield Advanced を有効化すると、月額 3,000 ドルは組織全体で 1 回のみの課金で、メンバーアカウントの追加料金は保護リソースのデータ転送量のみです。Shield Advanced の導入判断は、DDoS 攻撃のリスクとコスト保護の価値を比較して行います。WAF 利用料が免除されるため、既に WAF を複数リソースで活用している環境では実質コストが大幅に下がります。

まとめ

Shield は L3/L4 の DDoS 攻撃を Standard で無料自動緩和し、Advanced で L7 攻撃への対応と SRT サポートを提供するサービスです。Advanced のプロアクティブエンゲージメントで攻撃検出時に SRT が自動対応を開始し、コスト保護で DDoS 攻撃によるスケーリングコストの増加分を補填します。Organizations で月額 3,000 ドルを組織全体で共有でき、WAF 利用料免除と合わせて費用対効果を評価してください。