DDoS

大量のリクエストでサービスを利用不能にする分散型サービス拒否攻撃

セキュリティ

DDoS とは

DDoS (Distributed Denial of Service) は、多数のコンピュータ (ボットネット) から大量のリクエストを送信し、サービスを利用不能にする攻撃である。正規のトラフィックと攻撃トラフィックの区別が難しい。

攻撃の種類

レイヤー 攻撃 説明
L3/L4 (ネットワーク) SYN Flood TCP の 3-way ハンドシェイクを悪用
L3/L4 UDP Flood 大量の UDP パケットを送信
L3/L4 DNS Amplification DNS を利用して増幅
L7 (アプリケーション) HTTP Flood 大量の HTTP リクエスト
L7 Slowloris 接続を長時間占有

AWS での DDoS 対策

ユーザー → CloudFront (Shield + WAF) → API Gateway → Lambda
              ↑ L3/L4 攻撃を吸収      ↑ L7 攻撃をフィルタ
サービス 対策
AWS Shield Standard L3/L4 DDoS 防御 (無料、自動)
AWS Shield Advanced 高度な DDoS 防御 + DRT サポート ($3,000/月)
AWS WAF L7 攻撃のフィルタリング
CloudFront エッジで攻撃トラフィックを吸収
Route 53 DNS レベルの DDoS 防御

サーバーレスの DDoS 耐性

Lambda + API Gateway はサーバーレスで自動スケールするため、L3/L4 の DDoS に対して本質的に耐性がある。ただし L7 の HTTP Flood はコスト増加を引き起こす。

対策 効果
API Gateway スロットリング リクエスト数を制限
Lambda の同時実行上限 コストの上限を設定
WAF のレートベースルール IP ごとにブロック
CloudFront エッジでキャッシュ、オリジン負荷軽減

DDoS 攻撃を受けた場合

1. CloudWatch アラームで検知
2. WAF のレートベースルールを強化
3. Shield Advanced の場合は DRT (DDoS Response Team) に連絡
4. 攻撃パターンを分析し、WAF ルールを追加
5. ポストモーテムで再発防止策を策定

体系的に学ぶなら関連書籍を参照してほしい。

関連用語