9. DNSSECの状態
検証リゾルバは、応答が4つの状態のいずれかであることを判断できます:セキュア、インセキュア、偽造、または不確定。これらの状態は[RFC4033]と[RFC4035]で定義されていますが、2つの定義は若干異なります。本文書は、2つの定義を調和させる努力はせず、それらが調和させる必要があるかどうかについて立場を取りません。
[RFC4033]のセクション5では次のように述べています:
検証リゾルバは、以下の4つの状態を判断できます:
セキュア(Secure): 検証リゾルバには信頼アンカーがあり、信頼チェーンがあり、応答内のすべての署名を検証できます。
インセキュア(Insecure): 検証リゾルバには信頼アンカー、信頼チェーンがあり、ある委任ポイントでDSレコードの非存在の署名された証明があります。これは、ツリー内の後続の分岐が証明可能に不安全であることを示します。検証リゾルバは、ドメイン空間の一部を不安全としてマークするローカルポリシーを持つ場合があります。
偽造(Bogus): 検証リゾルバには信頼アンカーがあり、下位データが署名されていることを示すセキュアな委任がありますが、応答は何らかの理由で検証に失敗します:署名の欠落、期限切れの署名、サポートされていないアルゴリズムによる署名、関連するNSEC RRが存在すべきだと言うデータの欠落など。
不確定(Indeterminate): ツリーの特定の部分がセキュアであることを示す信頼アンカーがありません。これはデフォルトの動作モードです。
[RFC4035]のセクション4.3では次のように述べています:
セキュリティ認識リゾルバは、4つのケースを区別できなければなりません:
セキュア(Secure): リゾルバが信頼されたセキュリティアンカーからRRsetへの署名されたDNSKEYおよびDS RRのチェーンを構築できるRRset。この場合、RRsetは署名されるべきであり、上記のように署名検証の対象となります。
インセキュア(Insecure): リゾルバが、任意の信頼された開始点からRRsetへの署名されたDNSKEYおよびDS RRのチェーンがないことを知っているRRset。これは、ターゲットRRsetが未署名ゾーンまたは未署名ゾーンの子孫にある場合に発生する可能性があります。この場合、RRsetは署名されている場合も署名されていない場合もありますが、リゾルバは署名を検証できません。
偽造(Bogus): リゾルバが信頼チェーンを確立できるべきだと信じているが、何らかの理由で検証に失敗する署名、または関連するDNSSEC RRが存在すべきだと示す欠落したデータのいずれかにより、そうすることができないRRset。このケースは攻撃を示す可能性がありますが、構成エラーまたは何らかの形式のデータ破損を示す場合もあります。
不確定(Indeterminate): リゾルバが必要なDNSSEC RRを取得できないため、RRsetが署名されるべきかどうかを判断できないRRset。これは、セキュリティ認識リゾルバが関連ゾーンのセキュリティ認識ネームサーバーに連絡できない場合に発生する可能性があります。