DDoS 攻撃 - DDoS 攻撃

大量のトラフィックでサービスを停止させる分散型サービス拒否攻撃。レイヤー別の攻撃手法と防御策を解説。

概念図

DDoS 攻撃 diagram

攻撃シナリオ

レイヤー別 DDoS 攻撃ツールの例

bash
# UDP フラッド(ボリューム型)
hping3 --udp --flood --rand-source -p 53 target.example.com

# SYN フラッド(プロトコル型)
hping3 -S --flood --rand-source -p 80 target.example.com

# Slowloris(アプリケーション層)
多数の TCP 接続を開いたまま、HTTP ヘッダを 1 行ずつ
非常にゆっくり送信してソケットを占拠する

DDoS 攻撃の分類(OSI レイヤー別)

DDoS(Distributed Denial of Service)攻撃は、標的のリソースを枯渇させる目的に応じて 3 層に分類されます。

防御策もレイヤーによって異なります。

分類 レイヤー 狙い 代表的な手法
ボリューム型 L3 / L4 帯域を使い切る UDP フラッド、ICMP フラッド、DNS / NTP / Memcached アンプリフィケーション
プロトコル型 L3 / L4 ステートテーブルや接続数を枯渇させる SYN フラッド、Ping of Death、Smurf、Fraggle
アプリケーション層型(L7) L7 Web サーバーや API のリソースを消費させる HTTP フラッド、Slowloris、R-U-Dead-Yet (RUDY)、Cache-busting

規模の単位: ボリューム型は Gbps / Tbps(帯域)、プロトコル型は Mpps(パケット毎秒)、アプリケーション層は RPS(Request Per Second) で測られます。

どれか 1 つでもボトルネックになればサービスは停止します。

ボットネットと反射・増幅攻撃

大規模な DDoS を実現するには、攻撃元を分散させる ボットネット と、小さな通信で大きな応答を引き出す 反射・増幅攻撃 が鍵になります。

代表的なボットネット:

  • Mirai(2016) — IoT 機器(ルーター、防犯カメラ、DVR 等)に初期パスワードのままログインして感染。2016 年 10 月、DNS プロバイダ Dyn を攻撃し、Twitter、Netflix、GitHub、Airbnb、Reddit 等が大規模に停止。ピーク時で約 1.2 Tbps の攻撃規模
  • Meris(2021) — MikroTik ルーター経由で約 25 万台を侵害し、Yandex に 2180 万 RPS の L7 攻撃を記録
  • Mēris 系 / Aisuru(2024) — 2024 年以降も IoT / ルーター経由のボットネットが成長を続けている

反射・増幅攻撃の原理:

  1. 攻撃者が送信元 IP を被害者の IP に偽装(IP spoofing)した小さな UDP クエリを公開サーバー(DNS、NTP、Memcached 等)に送る
  2. サーバーは正規のクエリだと判断し、大きな応答を被害者の IP に返す
  3. 1 のリクエストが 数十〜5 万倍 に増幅される
プロトコル 増幅率 備考
DNS 28-54 倍 公開 DNS リゾルバの悪用
NTP (monlist) 556 倍 古い NTP サーバーが悪用対象
Memcached 最大約 51,200 倍 2018 年 GitHub が 1.35 Tbps の攻撃を受けた
SSDP / UPnP 30 倍 家庭用ルーターの UPnP

レイヤー別の防御戦略

レイヤー 対策 具体例
ボリューム型(L3/L4) 自前の回線ではなく、CDN・DDoS 緩和サービスにトラフィックを吸収させる Cloudflare、AWS Shield Advanced、Akamai Prolexic、Google Cloud Armor
プロトコル型 SYN Cookie、接続数制限、Anycast によるトラフィック分散 Linux: net.ipv4.tcp_syncookies=1、F5 BIG-IP、Cloudflare Magic Transit
L7 アプリケーション層 WAF による異常検知、レート制限、CAPTCHA、JS Challenge、Bot 管理 Cloudflare WAF + Bot Fight Mode、AWS WAF + Rate-based rules、Akamai Bot Manager

運用面のベストプラクティス:

  • オリジンサーバーの IP を隠す: CDN / WAF の背後に置き、直接のアクセスを防ぐ。古い DNS レコードが漏洩しているとオリジン直接攻撃を受ける
  • 自動スケーリングとリソース上限の設計: スケールアウトしすぎてコストが爆発する「EDoS(Economic DoS)」を防ぐため、最大スケール数を設計時に決める
  • インシデントプラン: DDoS が発生した場合の連絡先(CDN ベンダー、ISP、ホスティング事業者)を事前にまとめておく
  • BGP / ルート制御: 大規模攻撃時は上流 ISP と連携して RTBH(Remotely Triggered Black Hole)や FlowSpec で経路レベルのフィルタリングを依頼する

注意: 2023-2024 年には HTTP/2 Rapid Reset 脆弱性(CVE-2023-44487)による 2.01 億 RPS 規模の L7 攻撃が Google に観測されました。

既知の L7 攻撃パターンは WAF ベンダーの情報を随時取り込む必要があります。

関連トピック