LinuCレベル3 セキュリティスペシャリスト セキュアプロトコルによる各種機能の実装 問8
セキュアプロトコルによる各種機能の実装/DNSSECDNSSECで使われるNSEC3レコードの説明として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル3 セキュリティスペシャリストの出題範囲「セキュアプロトコルによる各種機能の実装」に対応。実際の試験問題ではありません)
- A存在しない名前への否定応答で、実在する名前そのものではなくハッシュ値を並べて示すことで、ゾーン内の名前の列挙を難しくする
- B子ゾーンのKSKから計算したハッシュ値を親ゾーン側に登録し、親ゾーンから子ゾーンへの信頼の連鎖をつなげる
- C各リソースレコードセットに対する電子署名を格納し、署名の有効期間や署名に使った鍵の識別子(キータグ)も含む
- Dゾーンの署名を検証するための公開鍵(ZSKやKSK)を格納し、ゾーンの頂点でリソースレコードとして公開される
正解:A
解説
DNSSECでは、問い合わせた名前が存在しないことも署名つきで証明する必要があり、そのための否定応答レコードがNSECとNSEC3です。NSECは実在する名前を順に並べて「この間には名前が無い」ことを示すため、NSECをたどるとゾーン内の全名前を列挙(ゾーンウォーキング)できてしまいます。NSEC3は名前のハッシュ値を並べることで、この列挙を難しくします。ハッシュの計算に使うアルゴリズム・反復回数・ソルトは、ゾーンの頂点のNSEC3PARAMレコードに置かれ、権威サーバーが否定応答を作る際に参照します。
選択肢ごとの解説
- A正しい。NSEC3は名前のハッシュ値で不存在を証明し、NSECで起きるゾーン内の名前の列挙を難しくします。
- B誤り。これはDSレコードの説明です。DSは親ゾーンに置かれ、子ゾーンの鍵との間の信頼の連鎖をつなぎます。
- C誤り。これはRRSIGレコードの説明です。RRSIGはレコードセットごとの署名と、その有効期間や鍵の識別子を持ちます。
- D誤り。これはDNSKEYレコードの説明です。DNSKEYはゾーンの公開鍵を格納し、ゾーンの頂点に置かれます。