事の顛末
JPCERTより以下のメールが着た
「この連絡は、JPNIC、JPRS WHOIS データベースに登録されている、もしくは以
前に返信いただいた、下記の担当者の方にお送りしています。
JPCERT/CC では、以下の通り、貴サイトの DNS サーバが、DNS の再帰的な問合
せ (recursive queries) を使った DDoS 攻撃の踏み台として使用された可能性
があるとの報告を受けています。・・・」
「DNS の再帰的な問合せ (recursive queries) を使った DDoS 攻撃」とは
DNS Amp攻撃の解説と、踏み台にされないためのBIND DNSの設定
調査
最初にDNSのキャッシュの内容をファイルに出力
rndc dumpdb
上記を実行すると/etc/bind/named.conf.optionsで指定されたディレクトリにファイル(named_dump.db)が出力される。
(キャッシュのクリアはrndc flush)
options{ directory "/var/cache/bind"; };
対策終了後のsyslogを見るとDDosの形跡と思われる多くの問い合わせが着ている。
特に多いのが「somethingstrange.netfirms.com」と「webpanel.sk」についての問い合わせ。
Sep 24 11:50:04 localhost named[11347]: client 65.129.239.237#22124: query (cache) 'somethingstrange.netfirms.com/ANY/IN' denied Sep 24 11:50:05 localhost named[11347]: client 65.129.239.237#59962: query (cache) 'somethingstrange.netfirms.com/ANY/IN' denied Sep 24 11:50:05 localhost named[11347]: client 69.31.20.75#10270: query (cache) 'webpanel.sk/ANY/IN' denied
named_dump.dbを確認しても上記のドメインに関するキャッシュはない。
単純に問い合わせているだけのようだ。
対応方法
DNSには2つの機能(役割)がある。
(1)コンテンツサーバ
自分が管理しているドメインに関する情報の問い合わせへの回答
(2)キャッシュサーバ
(1)以外の問い合わせに対する回答
今回の対策とでは(2)に対する問い合わせを社内のみに限定する。
named.conf.optionsに以下を記述して基本社外からの問い合わせを拒絶。
allow-query{ localhost; 社内のネットワーク };
弊社が管理しているドメインについては問い合わせを許可
zone "管理対象ドメイン" { allow-query{any;}; };
以上