スポンサーリンク

【応用情報技術者試験】DNSSEC

応用情報技術者試験:DNSSEC。DNS応答を署名で検証 セキュリティ

DNSSECは、デジタル署名を使い、DNSデータの出所と改ざんの有無を検証する仕組みです。DNSの情報を暗号化して隠す機能とは区別します。署名されたデータを、信頼できる鍵からたどって検証する点が重要です。

署名はDNSデータに付く

署名の対象はDNSレコードの集合(RRset)です。キャッシュなどを経由しても、検証する側が署名と鍵の信頼関係を確認できます。応答を送ってきた相手の通信経路だけを信用する仕組みではありません。

要素基本的な役割
RRSIGレコード集合に対する署名
DNSKEY検証に用いる公開鍵
DS親ゾーン側から子の鍵を確認するための情報
トラストアンカー検証の出発点として信頼する鍵などの情報

DSには子のDNSKEYのダイジェストなどが含まれます。検証するリゾルバは、信頼の出発点から鍵と署名のつながりを確認します。単にDSと応答の値を比較するだけではありません。

守れることと守らないこと

目的DNSSECとの関係
署名されたDNSデータの出所・完全性を検証対象
名前やレコードが存在しない応答の検証認証された不在証明を用いる
問い合わせ内容を秘密にするDNSSECだけでは行わない
Webページの安全性を保証する行わない
DoS攻撃を防ぐDNSSECだけでは保証しない

署名検証が正常でも、そのドメインのWebページが無害だという意味ではありません。DNSデータの真正性と、サイトの運営内容の安全性は別の判断です。

署名と検証の両方が必要

ゾーンに署名を付ける側だけでなく、受け取ったデータを検証する側と信頼のつながりも必要です。検証できる署名付きデータへの偽装を見抜く助けになりますが、未署名のデータまで一律に保護されるわけではありません。

検証失敗と、そもそも信頼の連鎖がない未署名データは区別します。署名期限切れや鍵の更新、親子の設定の不整合などでも検証に失敗することがあるため、署名を設定して終わりではなく運用が必要です。

DoH・DoTとは役割が違う

DoHやDoTはDNS通信にHTTPSやTLSを使う仕組みです。DNSSECはデータの署名検証です。暗号化された通信経路を使うことだけで、DNSデータの署名が検証されたことにはなりません。

確認問題

DNSSECで検証が成功すれば、問い合わせ内容は暗号化されて隠れますか?

解答・解説を見る

いいえ。DNSSECはDNSデータの出所・完全性を検証する仕組みで、問い合わせの機密性を提供するものではありません。

DNSの流れとDNSSECをnoteで復習する

無料noteには名前解決、キャッシュ、DNSレコードに加え、キャッシュポイズニングとDNSSECの基本もあります。どこで応答を受け取り、何を検証するのかをDNS全体の流れと結び付けて確認できます。

無料note:DNSの仕組みとDNSSECを学ぶ

資格・目的別のnote教材ナビから、関連教材も選べます。

参考資料

RFC 4033:DNSSECの目的と保護の範囲

コメント