メインコンテンツまでスキップ

12. Security Considerations (セキュリティに関する考慮事項)

本文書は DNS セキュリティ拡張を紹介し, 新しいセキュリティレコードと DNS プロトコル変更を含む文書セットについて説明します。拡張は, リソースレコードセット上のデジタル署名を使用してデータ発信元認証とデータ完全性を提供します。本節ではこれらの拡張の制限について議論します。

セキュリティ認識リゾルバが DNS 応答を検証するためには, 信頼された起点から応答ゾーンを含むゾーンまでのパス上のすべてのゾーンが署名されている必要があり, 解決プロセスに関与するすべてのネームサーバとリゾルバは本文書セットで定義されているようにセキュリティ認識である必要があります。セキュリティ認識リゾルバは, 未署名ゾーンから発信された応答, セキュリティ認識ネームサーバによって提供されていないゾーンからの応答, またはリゾルバがセキュリティ認識でない再帰ネームサーバを通じてのみ取得できる DNS データの応答を検証できません。セキュリティ認識リゾルバが必要とする認証鍵を取得および検証できないような認証チェーンの中断がある場合, セキュリティ認識リゾルバは影響を受ける DNS データを検証できません。

本文書は, IPsec で保護されたチャネルの使用や TSIG ([RFC2845]) や SIG(0) ([RFC2931]) などの DNS トランザクション認証メカニズムの使用など, DNS クエリにセキュリティを追加する他の方法について簡単に議論しますが, トランザクションセキュリティ自体は DNSSEC の一部ではありません。

定義上, 非検証セキュリティ認識スタブリゾルバは自身で DNSSEC 署名検証を実行しないため, 代わりにこれらのチェックを実行するセキュリティ認識再帰ネームサーバに対する (およびそれらからの) 攻撃と, それらのセキュリティ認識再帰ネームサーバとの通信に対する攻撃の両方に対して脆弱です。非検証セキュリティ認識スタブリゾルバは, 後者の脅威から防御するために何らかの形式のチャネルセキュリティを使用する必要があります。前者の脅威に対する唯一の既知の防御は, セキュリティ認識スタブリゾルバが自身の署名検証を実行することですが, その時点で, 定義上, それはもはや非検証セキュリティ認識スタブリゾルバではなくなります。

DNSSEC はサービス拒否攻撃から保護しません。DNSSEC は, 攻撃者が DNSSEC メカニズムを使用して被害者のリソースを消費しようと試みることができるため, セキュリティ認識リゾルバとセキュリティ認識ネームサーバに対する暗号操作に基づく新しいクラスのサービス拒否攻撃に対して DNS を脆弱にします。このクラスの攻撃は少なくとも2つの形式を取ります。攻撃者は, 応答メッセージ内の RRSIG RR を改ざんしたり, 不必要に複雑な署名チェーンを構築したりすることにより, セキュリティ認識リゾルバの署名検証コード内のリソースを消費できる可能性があります。攻撃者は, DNS 動的更新をサポートするセキュリティ認識ネームサーバに更新メッセージのストリームを送信することにより, セキュリティ認識ネームサーバ内のリソースを消費することもでき, これによりセキュリティ認識ネームサーバはゾーン内の一部の RRset に必要以上に頻繁に再署名することを余儀なくされます。

意図的な設計選択により, DNSSEC は機密性を提供しません。

DNSSEC は, 敵対的な当事者が NSEC チェーンをたどることによってゾーン内のすべての名前を列挙する能力を導入します。NSEC RR は, ゾーン内のすべての名前の正規順序に沿って既存の名前から既存の名前へリンクすることにより, ゾーン内に存在しない名前を主張します。したがって, 攻撃者はこれらの NSEC RR を順番にクエリしてゾーン内のすべての名前を取得できます。これは DNS 自体への攻撃ではありませんが, 攻撃者がゾーンの内容を列挙することによってネットワークホストや他のリソースをマップすることを可能にする可能性があります。

DNSSEC は DNS に大幅な追加の複雑性を導入するため, 実装バグや誤構成されたゾーンの多くの新しい機会を導入します。特に, リゾルバで DNSSEC 署名検証を有効にすると, DNSSEC 構成エラーやバグにより, 正当なゾーン全体が事実上到達不能になる可能性があります。

DNSSEC は未署名ゾーンデータの改ざんから保護しません。ゾーンカットでの非権威データ (親ゾーン内のグルーおよび NS RR) は署名されていません。これは認証チェーンを検証する際に問題を引き起こしませんが, 非権威データ自体がゾーン転送操作中の改ざんに対して脆弱であることを意味します。したがって, DNSSEC は RRset に対してデータ発信元認証とデータ完全性を提供できますが, ゾーンに対しては提供できず, ゾーン転送操作を保護するには他のメカニズム (TSIG, SIG(0), または IPsec など) を使用する必要があります。

追加のセキュリティ考慮事項については [RFC4034] および [RFC4035] を参照してください。