JPドメイン名のサービス案内、ドメイン名・DNSに関連する情報提供サイト


JPRS トピックス&コラム No.021


Bot経由でDNSサーバーを広く薄く攻撃~DNS水責め攻撃の概要と対策~


「DNS水責め攻撃」と呼ばれる攻撃手法が、2014年初頭から世界的に観測されています。
今回はこの攻撃手法の概要と、現時点における対策について解説します。

DNS水責め攻撃の特徴

 DNS水責め攻撃では、攻撃対象のランダムなサブドメインに対するDNS問い合わせが攻撃に使われます。

図 1 攻撃に使われる問い合わせパターンの例
図 1 攻撃に使われる問い合わせパターンの例

 この問い合わせはカミンスキー型攻撃手法で用いられるものと同一であり、「ランダムDNSクエリー攻撃」や「ランダムサブドメイン攻撃」などとも呼ばれています。

▼攻撃の目的と攻撃対象

 DNS水責め攻撃ではカミンスキー型攻撃手法と異なり、キャッシュポイズニングを目的とした攻撃パケット(偽のDNS応答)が検出されません。そのため、この攻撃が最初に観測された2014年初頭の段階では、攻撃者の真の目的が判然としませんでした。
 その後、2014年5月から7月にかけ、数多くのドメイン名がこの攻撃の被害を受け、アクセス不能の状態に陥りました。その際の攻撃パターンや攻撃対象の分析結果から(*1)、攻撃対象のドメイン名を管理する権威DNSサーバーに大量のDNS 問い合わせを送り付けることでサービス不能の状態にし、そのドメイン名をアクセス不能の状態に陥らせることが攻撃者の目的であったと考えられています。

▼ISPのフルリゾルバーにも被害が発生

 前述した2014年5月から7月の攻撃では権威DNSサーバーに加え、複数のISPを含む数多くのフルリゾルバー(キャッシュDNSサーバー)も過負荷の状態となり、一時的にサービス不能の状態に陥りました。

Water Torture=水責め

 2014年2月にこの攻撃について報告した米国Secure64 Softwareが、この攻撃手法を「Water Torture(水責め)」と命名しました(*2)。同社では命名の由来をかつて中国などで行われていた「Chinese Water Torture(*3)(中国式水責め)」であるとしています。

DNS水責め攻撃の概要

 DNS水責め攻撃の概要を、以下の図で説明します。

図 2 DNS 水責め攻撃の登場人物
図 2 DNS 水責め攻撃の登場人物

▼攻撃者・Botnet

 DNS水責め攻撃を実行する攻撃者は、インターネット上のオープンリゾルバーのリストを持っています。また、攻撃者は多数のPCなどにより構成されるBotnet を遠隔操作することで、攻撃を実行します。

▼オープンリゾルバー・欠陥を持つホームルーター

 このオープンリゾルバーのリストにはフルリゾルバーの他、本来受け付けてはならないWAN側からの問い合わせを受け付けて処理してしまう、欠陥を持つホームルーターも掲載されています。これらは外部から見た場合、いずれもオープンリゾルバーとして動作します。

▼ISPのフルリゾルバー

 ISPのフルリゾルバーは、自身の顧客に名前解決サービスを提供します。
 DNS水責め攻撃では顧客側に設置された多数のホームルーターからISPのフルリゾルバーに、大量のDNS問い合わせが送られます。そのため、そのフルリゾルバーがオープンリゾルバーではない場合にも、攻撃の被害を受ける可能性があります。

▼攻撃対象ドメイン名の権威DNSサーバー

 攻撃対象ドメイン名を管理(収容)する権威DNSサーバーです。
 DNS水責め攻撃では攻撃対象の権威DNSサーバーに大量のDNS問い合わせを送り付け、サービス不能の状態にします。そのため、そのサーバーが複数のドメイン名を管理している場合、攻撃対象以外のドメイン名も攻撃の巻き添えになる可能性があります。

DNS水責め攻撃の仕組み

 DNS水責めによる攻撃例を以下に示します。

図 3 DNS 水責め攻撃の仕組み
図 3 DNS 水責め攻撃の仕組み
  • Botnet に対し、リストに掲載されているオープンリゾルバー(*4)に、攻撃対象ドメイン名のランダムなサブドメインをDNS 問い合わせするように指令します。
  • 規制回避のため、各BotからのDNS問い合わせは低い頻度で送られます。しかし、使われるBotの台数が大量であるため、各オープンリゾルバーには大量の問い合わせが到達します。
  • 問い合わされた名前はキャッシュに存在しないため、権威DNSサーバーへの問い合わせが毎回発生します。ホームルーターの場合、ISPのフルリゾルバーに問い合わせが転送されます
  • 攻撃対象の権威DNSサーバー、及びISPのフルリゾルバーに問い合わせが集中します。結果としてこれらのサーバーが過負荷となり、サービス不能の状態に陥ります。

▼DNSの仕組みを攻撃にそのまま利用

 このように、DNS水責め攻撃ではランダムなサブドメインを付加することでキャッシュ機能を無効化することで、DNSの仕組みを攻撃にそのまま利用しています。また、DNSリフレクター攻撃(*5)と異なり問い合わせ元のIPアドレスを偽装する必要がなく、根本的な対策を実施しにくいことに特徴があります。

攻撃対策

 現時点におけるDNS 水責め攻撃の代表的な対策として、以下のものが実施されています。

▼ISPにおけるIP53Bの実施

IP53B(Inbound Port 53 Blocking)は、顧客側の53/udp(DNS)へのアクセスをISP 側でブロックすることにより、ホームルーターの欠陥を外部から利用できなくするものです。DNSリフレクター攻撃の対策としても有効であることから、IP123B(NTP)と共に国内外のISPにおいて、導入が進められています(*6)

▼フルリゾルバーにおける対策

 DDoS対策機器やロードバランサ―における対策、BIND 9のfetches-per-zone/fetches-per-server機能やUnboundのratelimit機能の利用などが実施されています。
 しかし、これらは攻撃発生後の事後対策となること、また、対策の実施により対象のドメイン名に対するDoS自体は成立してしまうことに注意が必要です。



複数の報告者から、攻撃対象となったドメイン名の多くが中国・台湾・香港のECサイトやカジノサイトなどであったと報告されています。【↑】

Water Torture: A Slow Drip DNS DDoS Attack
https://secure64.com/water-torture-slow-drip-dns-ddos-attack/【↑】

Wikipedia: Chinese water torture
https://en.wikipedia.org/wiki/Chinese_water_torture【↑】

前述のようにこのリストにはフルリゾルバーの他、欠陥を持つホームルーターのWAN側のIPアドレスも記載されています。【↑】

JPRS トピックス&コラム No.3を参照。【↑】

IP53B/IP123Bの実施にあたり、2014年7月22日にJAIPAなど5団体による「電気通信事業者における大量通信等への対処と通信の秘密に関するガイドライン」が改定されています。


掲載内容は2019年5月のものです。