なぜDNS増幅攻撃について書くのか?
先週(2006/3/29)、"http://www.jpcert.or.jp/at/2006/at060004.txt">JPCERTやJPRSが注意喚起
の再帰的な問合せを使った DDoS"の件。
本質的な危険が理解されないまま途方にくれている方が多そうなの
DNS増幅攻撃とは
まず"DNS の再帰的な問合せを使った DDoS攻撃"というのが表現が分かりにくいのですが
Amplification Attacksという攻撃の手法を指しています。
ここではDNS増幅攻撃と呼びます。今回のJPCERT
このDNS増幅攻撃を理解することが大切ですので
DNS増幅攻撃の登場人物は以下のとおりです。
攻撃者:DNS増幅攻撃する悪意あるクラッカー
踏み台:不適切な設定のDNSサーバ、及びその管理者
犠牲者:DNS増幅攻撃の犠牲になる人(具体的には
2006年あたまからVeriSignがこの攻撃を受けていま
どのように攻撃が成立するかというと・・・
1、攻撃者はDNSサーバにソースIPを偽装したDNSリクエス
2、DNSサーバは偽装されたIPに対してリクエストの結果を送信する。
3、結果的に犠牲者のネットワークに大量のDNSトラフィックが
ということです。
既存のDoSとの違い
ここまで読んで、「なんだ今までBotNetがやっていたことと
確かにここまではありきたりなDDoSの一種と大差ありません。ここからがポイントです。
DNSを使った名前解決はクエリー要求とクエリー応答の通信量の
試しに、nslookupコマンドで""return top.js.OpenExtLink(window,event,this)"
href="http://u-tokyo.ac.jp/"
target="_blank">u-tokyo.ac.jp"の全てのレコードを要求してみます。
style="MARGIN-RIGHT: 0px">
> set type=all
> href="http://www.u-tokyo.ac.jp/"
target="_blank">www.u-tokyo.ac.jp
Server: "return top.js.OpenExtLink(window,event,this)"
href="http://ns1.mss-iss.ne.jp/"
target="_blank">ns1.mss-iss.ne.jp
Address: "return top.js.OpenExtLink(window,event,this)"
href="http://211.19.41.185/"
target="_blank">211.19.41.185
Non-authoritative answer:
href="http://www.u-tokyo.ac.jp/"
target="_blank">www.u-tokyo.ac.jp
internet address = "return top.js.OpenExtLink(window,event,this)"
href="http://133.11.128.254/"
target="_blank">133.11.128.254
href="http://www.u-tokyo.ac.jp/"
target="_blank">www.u-tokyo.ac.jp
MX preference = 10, mail exchanger = "return top.js.OpenExtLink(window,event,this)"
href="http://www.u-tokyo.ac.jp/"
target="_blank">www.u-tokyo.ac.jp
href="http://u-tokyo.ac.jp/"
target="_blank">u-tokyo.ac.jp nameserver =
href="http://dns3.nc.u-tokyo.ac.jp/"
target="_blank">dns3.nc.u-tokyo.ac.jp
href="http://u-tokyo.ac.jp/"
target="_blank">u-tokyo.ac.jp nameserver =
href="http://dns1.nc.u-tokyo.ac.jp/"
target="_blank">dns1.nc.u-tokyo.ac.jp
href="http://u-tokyo.ac.jp/"
target="_blank">u-tokyo.ac.jp nameserver =
href="http://dns2.nc.u-tokyo.ac.jp/"
target="_blank">dns2.nc.u-tokyo.ac.jp
href="http://www.u-tokyo.ac.jp/"
target="_blank">www.u-tokyo.ac.jp
internet address = "return top.js.OpenExtLink(window,event,this)"
href="http://133.11.128.254/"
target="_blank">133.11.128.254
href="http://dns3.nc.u-tokyo.ac.jp/"
target="_blank">dns3.nc.u-tokyo.ac.jp AAAA IPv6
address = 2001:200:180::35:3
href="http://dns3.nc.u-tokyo.ac.jp/"
target="_blank">dns3.nc.u-tokyo.ac.jp internet
address = "return top.js.OpenExtLink(window,event,this)"
href="http://157.82.0.1/"
target="_blank">157.82.0.1
href="http://dns1.nc.u-tokyo.ac.jp/"
target="_blank">dns1.nc.u-tokyo.ac.jp AAAA IPv6
address = 2001:200:180::35:1
href="http://dns1.nc.u-tokyo.ac.jp/"
target="_blank">dns1.nc.u-tokyo.ac.jp internet
address = "return top.js.OpenExtLink(window,event,this)"
href="http://133.11.0.1/"
target="_blank">133.11.0.1
href="http://dns2.nc.u-tokyo.ac.jp/"
target="_blank">dns2.nc.u-tokyo.ac.jp AAAA IPv6
address = 2001:380:1ab::35:2
href="http://dns2.nc.u-tokyo.ac.jp/"
target="_blank">dns2.nc.u-tokyo.ac.jp internet
address = "return top.js.OpenExtLink(window,event,this)"
href="http://219.166.230.42/"
target="_blank">219.166.230.42
このときクライアントからDNSサーバへの通信は53byteで
たいしてDNSサーバからの応答は各種レコード
約7倍の350byte
たとえばDoSを仕掛ける攻撃者が32Kbpsのダイヤルアップ
攻撃者が直接www.u-tokyo.ac.jpにDoSをした
細いダイヤルアップ回線がボトルネックとなって
1時間で犠牲者のネットワークに送ることのできるトラフィックは10MBy
height="360"
alt="dos_normal"
src=
"http://blog.sparky.jp//media/img_20060404T230925404.jpg"
width="353" />
そこでDNS増幅攻撃の登場です。攻撃者は再帰問い合わせを許す
ソースIPが偽装されているのでDNSサーバからの応答は"http://www.u-tokyo.ac.jp">www
このトラフィックは、クライアントからDNSサーバへの通信の
(図「DNS増幅攻撃を使ったDoS」)
height="360"
alt="dos_dnsamp"
src=
"http://blog.sparky.jp//media/img_20060404T230926295.jpg"
width="367" />
このようにDNSのプロトコルの性質を巧みに利用して
今までのDDoS以上のトラフィックを犠牲者のネットワークに
DNS増幅攻撃をもっと増幅する方法!?
増幅が7倍という風に書きましたがこれはあくまで一例で
href="http://www.isotf.org/news/DNS-Amplification-Attacks.pdf"
target=
"_blank">http://www.isotf.org/news/DNS
合計4320 Byteの通信を発生させられるとあります。この場合
またSmurfの手法を応用するということが考えられます
SmurfはソースIPをブロードキャストアドレスにするとい
この手法を応用してDNS増幅攻撃をさらに
そして中長期的視点から考えた場合、DNSのクエリー応答の通
DNSが多機能化してきているから
IPv6,DNSSEC,NAPTRなどをサポートするよ
DNS増幅攻撃が行いやすくなると言えます。
対策
DNS増幅攻撃を許してしまう主な原因は以下の2つです。
1、キャッシュサーバが誰からのクエリーでも応答する設定になっ
2、spoofされたトラフィックを外部に流すことを許している
この2つの原因、どちらかを是正することでDNS増幅攻撃を止め
対策についてはJPRS,JPCERTからのアドバイザリに詳しく載っていますので、そちらを参照してください。
このアドバイザリが出たのは
そして現実に被害を受けているサイトがあると
「とりあえず比較的対策が簡単なキャッシュサーバの設定を是正をしていきましょ
最後に
誰からのクエリーでも応答するDNSキャッシュサーバのこと
MTAの
様々な方ががんばった結果、MTAに関してはSPAMの中継をし
(=オープンリレーのMTAを放置しない)という意識が、管理者一般に浸透して
同じようにDNSもオープンルックアップのまま外部に公
他サイトへのDDoSの踏み台になる可能性がある
参考
DNS Amplification Attacks
href="http://www.isotf.org/news/DNS-Amplification-Attacks.pdf"
target=
"_blank">http://www.isotf.org/news/DNS
The Continuing Denial of Service Threat Posed by DNS
Recursion
href=
"http://www.us-cert.gov/reading_room/DNS-recursion121605.pdf"
target=
"_blank">http://www.us-cert.gov/reading
DNS の再帰的な問合せを使った DDoS 攻撃に関する注意喚起
href="http://www.jpcert.or.jp/at/2006/at060004.txt"
target=
"_blank">http://www.jpcert.or.jp/at
DNS の再帰的な問合せを使った DDoS 攻撃の対策について
href=
"http://jprs.jp/tech/notice/2006-03-29-dns-cache-server.html"
target=
"_blank">http://jprs.jp/tech/notice
どなたかのホームページ
href=
"http://www.vwnet.jp/mura/BookFollow/JPCERT-AT-2006-0004.htm"
target=
"_blank">http://www.vwnet.jp/mura
激しいDDoS攻撃の詳細を明らかにしたVeriSign社
href=
"http://blog.privacy-jp.com/index.php/2006/03/18/e_sei_ao_a_ra_na_ifdifpa_cs_c_ca_a_a_da"
target=
"_blank">http://blog.privacy-jp.com
(警察庁の翻訳)
href=
"http://www.techworld.com/security/news/index.cfm?NewsID=5586"
target=
"_blank">http://www.techworld.com
(原文)