1. 毒盛/2014/容易なケース
毒盛再考 の結論にまとめたケースについての展開
NS レコードを持たないドメイン名は毒盛され易い。 DNS/毒盛/成立の要件
- NS レコードがキャッシュされることが少ないと、毒盛され易い。 親子ゾーン同居など
- NS レコードは上書きされやすい。 (NS移転返答を装う毒) RFC2181, 実装不良
以上のみっつのケースが別々に指摘されている。 1,2 は Mueller 手法を適用するだけ。
- 3 に関してはこれまでの脆弱性の歴史とBINDの不良を詳しく検討してみるとよい。
-- ToshinoriMaeno 2014-05-25 22:43:20
1.1. NS レコードを持たないドメイン名
前野が最初に気づいたのは co.jp ドメイン名である。
- zone として存在しないだけでなく、なんのレコードも持たないドメイン名であった。
属性型JPドメイン名はほぼ該当するし、ccTLD のもとにも多数みかける。 gouv.fr なども。
キャッシュには存在していないし、正規の返答でNSがキャッシュされることもないので、 上位ゾーンサーバからの委譲(委任)返答を偽装して、NSレコードを毒盛し易い。
1.2. NS レコードがキャッシュされることが少ない
jp ドメインのもとの dns.jp ゾーンは jp ゾーン(親)と同一のサーバでサービスされているため、
- NSレコードがキャッシュされる機会は少ない。(必要とされることがない)
JPRSが親子ゾーン同居として指摘している。 (いつ見つけたものかは不明)
- jp ゾーン全体を偽サイトに誘導できるので、大変危険である。
正規の返答には子ゾーンのNSレコードが含まれる機会もキャッシュされることも少ないので、 「子ゾーンのNS」に毒盛し易い。
root, root-servers.net のような隔世世代同居も含まれるが、 実際に root zone に毒盛できるかはキャッシュサーバの実装に依存する。
fr TLDなども類似の構成となっているが、 nic.fr 関係者は問題視していない。
- DNSSECを使えばいいと言っているようにも読める。
1.3. NS レコードは上書きされやすい
これまでの脆弱性の歴史とBINDの不良に詳しい鈴木常彦教授が指摘しているもの。
- 委譲返答ではなく、移転(転居)通知を装うNSレコードを返すものである。
- net TLD などに簡単に毒盛できるらしい。
- 成立するための条件の詳細は公表されていない。実装によるようだが、簡単に毒盛されるとのこと。
- net TLD などに簡単に毒盛できるらしい。
キャッシュが上書きされる条件をはっきりさせることができるのかどうか。(実装依存だと調査が大変)
- また、上書きされたものが、別の問い合せによって無毒化されないともかぎらないので条件の確定が困難である。
毒盛の条件に関しては今後の検討が必要だと思われる。危険であることは確かだろう。
-- ToshinoriMaeno 2014-05-25 22:51:44
DNS/GhostDomainNames が大きなヒントとなっている。
「委譲返答ではなぜ上書きされないのか」の理由も解明したい。
1.4. 対策の現状
NS毒盛に限った対策は考えられているが、実装されているらしいのはGoogle Public DNS だけのようである。