MoinQ:

DNS/毒盛再考/多世代ゾーン同居/NS名で分類について、ここに記述してください。

親子ゾーンを同居させているNS(の名前)がどのゾーンに属するかによって分けて、危険性を議論しましょう。

1. NS レコード名が一致の場合

まずは親子ゾーンのNSレコード値が同一の場合を考えます。

  1. 両方が外部名の場合
    • さくらの共用DNSゾーンサービスなどがあります。
  2. 両方が内部名の場合
    • 両方の内部名に相当するのは子ゾーン内の名前である場合しかありません。 (jp, dns.jp のケース)
  3. 片方だけが内部名にあたる場合 親ゾーン内の名前を子ゾーンが指定している場合です。

1,2 の場合、子ゾーンのNSがキャッシュされる機会は少ないので、子ゾーンの乗っ取りの危険性が大きくなります。

3 の場合になにが起きるか考える前に、以下の項を先に検討します。

-- ToshinoriMaeno 2014-09-18 01:25:46

2. NS レコード値が異なる場合

IP アドレスは同じでも、別々の名前を付けていたらどうなるでしょうか。(内部名かどうかは問いません)

親ゾーンのNSはさらに上位のゾーンサーバからの委譲返答によりキャッシュされているものとします。

子ゾーンNSは多くの場合にキャッシュされていることはないでしょう。
 どういう場合にキャッシュされるでしょうか。(積極的にNSを問い合わせる以外に)

上の状態で、子ゾーン内の(存在しない)名前について問合せを送って、子ゾーンを乗っ取るような攻撃を考えます。

キャッシュサーバは子ゾーン内の名前について、親ゾーンNSに問い合わせているつもりです。

-- ToshinoriMaeno 2014-09-18 01:30:50

3. 結論

NSレコードがどこを指していようが、親子ゾーンを同じサーバにおくのは毒盛により子ゾーンを乗っ取りされ易くなる。

-- ToshinoriMaeno 2014-09-18 02:05:39

NSレコードを持たないドメイン名に偽NSを持たせるという攻撃も可能です。

しかし、NSレコードを設定していても、攻撃され易いということです。