DNSアンプ攻撃の仕組み|小さな問い合わせで巨大なDDoS攻撃を実現する手法を理解する

DNSアンプ攻撃の仕組み

DNSアンプ攻撃の仕組み

DNSサーバはインターネット上で広く利用されているため、攻撃者にとっても魅力的な攻撃対象となっています。

その中でも特に有名なのがDNSアンプ攻撃(DNS Amplification Attack)です。

DNSアンプ攻撃はDDoS攻撃の一種であり、小さな問い合わせを利用して巨大な通信量を発生させる特徴があります。

攻撃者自身は大きな回線を持たなくても、大量のオープンリゾルバを利用することで数百Gbps規模の攻撃を実行できる場合があります。

本記事ではDNSアンプ攻撃の仕組みや攻撃手法、防御策について解説します。

DNSアンプ攻撃とは

DNSアンプ攻撃とは、DNSサーバの応答増幅特性を悪用したDDoS攻撃です。

Amplificationは「増幅」を意味します。

小さな問い合わせを送信し、大きな応答を被害者へ送り付けます。

DDoS攻撃との関係

DNSアンプ攻撃は反射型DDoS攻撃(Reflection Attack)の代表例です。


攻撃者
↓
DNSサーバ
↓
被害者

攻撃者自身は直接大量通信を送りません。

攻撃の基本構造


攻撃者
↓
送信元IP偽装
↓
オープンリゾルバ
↓
大量応答
↓
被害者

この仕組みによって攻撃が成立します。

送信元IPアドレス偽装とは

攻撃者は問い合わせ元IPアドレスを被害者のIPへ偽装します。


攻撃者
↓
偽装
198.51.100.10
↓
DNS問い合わせ

DNSサーバは被害者へ応答を返します。

なぜ増幅が起こるのか

DNSは小さな問い合わせに対して大きな応答を返すことがあります。

例えば次のようなケースです。


問い合わせ
60 byte

応答
3000 byte

50倍以上の増幅が発生します。

DNSSECが増幅率を高める理由

DNSSECでは署名情報が付与されます。


DNSKEY
RRSIG
DS

応答サイズが大きくなります。

そのため攻撃者に悪用されることがあります。

ANYクエリとは

昔のDNSアンプ攻撃でよく利用された問い合わせです。

$ dig example.com ANY

大量のDNS情報を取得できます。

ANYクエリの応答例

一度に複数レコードが返されます。


A
AAAA
MX
TXT
NS
SOA

応答サイズが大きくなります。

攻撃の流れ


攻撃者
↓
送信元IP偽装
↓
オープンリゾルバ
↓
大容量応答
↓
被害者

被害者の回線が圧迫されます。

なぜオープンリゾルバが狙われるのか

誰でも利用可能だからです。


世界中
↓
利用可能
↓
オープンリゾルバ

攻撃者にとって都合が良い存在です。

被害者側で起こること

  • 回線帯域の枯渇
  • Webサイト停止
  • メール停止
  • VPN停止

サービス全体へ影響します。

攻撃規模の例

攻撃者が1Gbpsの通信を送信した場合でも、50倍の増幅率なら次のようになります。


1Gbps
↓
50倍
↓
50Gbps

非常に大きな攻撃になります。

過去の大規模攻撃事例

DNSアンプ攻撃は数百Gbps規模のDDoS攻撃で利用されてきました。

インターネット全体へ大きな影響を与えた事例も存在します。

攻撃に利用されるポート

DNSは通常UDPを利用します。


UDP/53

接続確立が不要なため悪用されやすいです。

TCPでは難しい理由

TCPは3ウェイハンドシェイクが必要です。


SYN
SYN-ACK
ACK

送信元偽装が難しくなります。

BINDでの対策

最も重要なのはオープンリゾルバ化を防ぐことです。

allow-recursion {
    localhost;
    192.168.0.0/16;
};

利用者を制限します。

再帰問い合わせ制限

recursion no;

権威DNSでは一般的な設定です。

Response Rate Limiting

BINDにはRRL機能があります。

rate-limit {
    responses-per-second 10;
};

大量応答を抑制できます。

ファイアウォール対策

不要なDNSアクセスを遮断します。

  • UDP/53制限
  • TCP/53制限
  • アクセス元制限

基本的な防御策です。

オープンリゾルバ確認方法

外部から問い合わせを実施します。

$ dig @dns.example.com google.com

応答する場合は設定確認が必要です。

監視すべき項目

  • DNSトラフィック量
  • 問い合わせ数
  • 応答数
  • 帯域利用率

異常値を監視します。

企業で実施すべき対策

  • オープンリゾルバ禁止
  • RRL設定
  • アクセス制御
  • ファイアウォール設定
  • 定期監査

複数対策の組み合わせが重要です。

DNSアンプ攻撃とDNSSEC

DNSSECはセキュリティ向上に有効ですが、応答サイズを増加させます。

そのため適切な運用が必要です。

DNSSEC自体が危険という意味ではありません。

実務で覚えておきたいポイント

  • DNSアンプ攻撃は反射型DDoS攻撃である
  • 送信元IP偽装を利用する
  • オープンリゾルバが悪用される
  • DNS応答の増幅効果を利用する
  • RRLが有効な対策となる
  • オープンリゾルバ化を防ぐことが最重要である

まとめ

DNSアンプ攻撃はDNSの応答増幅特性を悪用した代表的なDDoS攻撃です。

オープンリゾルバを利用することで攻撃規模を大きくできるため、世界中で問題となっています。

BINDではallow-recursionやRRLを適切に設定し、オープンリゾルバ化を防ぐことが重要です。

DNSサーバ運用者は攻撃の仕組みを理解し、自社サーバが加害者にならないよう対策を実施しましょう。