当ページは検証・整備中のドラフトです。
内容は実環境での検証や追加調査により変更される予定です。
参照:ページ公開・更新ポリシー
DNSリークとは
DNSリークとは、本来利用する予定だったDNSサーバではなく、意図しないDNSサーバへDNS問い合わせが送信される状態を指す用語である。
DNS(Domain Name System)は、ドメイン名をIPアドレスへ変換する仕組みであり、Webサイトへアクセスする際には必ずDNS問い合わせが行われる。
DNSリークが発生すると、本来利用するはずだったDNSサーバではなく、別のDNSサーバへ問い合わせが送信されるため、期待していたセキュリティやプライバシー保護が十分に機能しない可能性がある。
なお、「DNSリーク」はRFCなどで厳密に定義された標準用語ではなく、VPNやプライバシー保護の分野を中心に自然に定着した業界用語である。
なぜVPN利用時によく話題になるのか
DNSリークはVPN利用時だけに発生する現象ではなく、本来利用する予定だったDNSサーバが利用されない状況全般で問題となる。
しかし、現在「DNSリーク」という言葉が使われる場面の多くはVPN利用時である。
その理由は、VPNでは通信内容だけでなくDNS問い合わせもVPN経由で送信することで、利用者の匿名性やプライバシーを保護することが期待されているためである。
その状態でDNS問い合わせだけがVPN外のDNSサーバへ送信されると、アクセスしたドメイン名などの情報がVPNの外部から把握できる可能性があり、VPNを利用する目的の一部が損なわれる。
このように、DNSリークの影響が最も顕著に現れるのがVPN利用時であることから、一般にはVPNの問題として説明されることが多い。
DNSリークが発生する原因
VPNの設定や実装
VPNソフトウェアやVPNサービスの実装によっては、通信はVPNを経由していてもDNS問い合わせだけが別のDNSサーバへ送信される場合がある。
また、スプリットトンネルなどの設定によっても、利用されるDNSサーバが変わる場合がある。
OSやネットワークの設定
OSやネットワーク機器の設定によっては、本来利用する予定だったDNSサーバよりも別のDNSサーバが優先される場合がある。
その結果、利用者が意図していないDNSサーバへ問い合わせが送信されることがある。
DoH・IPv6などの影響
ブラウザでDoH(DNS over HTTPS)が有効になっている場合は、問い合わせ自体は暗号化されるものの、VPNやOSで想定していたDNSサーバではなく、ブラウザが指定したDoHサーバが利用される場合がある。
また、IPv6への対応状況や通信環境によっても、期待したDNSサーバが利用されない場合がある。
DNSリークによって発生する問題
閲覧先ドメインが把握される
DNS問い合わせには、アクセス先のドメイン名が含まれる。
DNSリークが発生すると、通信内容そのものは暗号化されていても、どのWebサイトへアクセスしたかという情報が、本来想定していなかったDNSサーバの管理者などに把握される可能性がある。
匿名性・プライバシーが低下する
VPNでは通信経路やDNS問い合わせをまとめてVPN経由にすることで、利用者の匿名性やプライバシーを高めている。
DNSリークが発生すると、その効果が十分に得られず、匿名性やプライバシーが低下する可能性がある。
DNSポリシーやDNSフィルタリングが期待どおり機能しない
企業や家庭では、DNSフィルタリングやセキュリティポリシーを適用したDNSサーバを利用している場合がある。
DNSリークによって別のDNSサーバが利用されると、本来適用されるはずだった名前解決の制御やDNSフィルタリングが機能しなくなる可能性がある。
DNSリークを確認する考え方
DNSリークチェックサービスを利用する
VPN利用時は、DNSリークチェックサービスを利用することで、実際にどのDNSサーバへ問い合わせが送信されているかを確認できる。
期待しているDNSサーバと異なる結果になっている場合は、DNSリークや設定の問題が発生している可能性がある。
利用中のDNSサーバを確認する
OSやネットワーク機器では、現在利用しているDNSサーバを確認できる場合がある。
利用中のDNSサーバを把握することで、想定どおりのDNSサーバが利用されているかを判断できる。
具体的な確認手順は、利用するOSやネットワーク環境によって異なる。
DNSリークと混同しやすい概念
DNSハイジャックとの違い
DNSハイジャックは、攻撃者がDNS設定や通信経路を不正に変更し、攻撃者が指定したDNSサーバを利用させる攻撃である。
一方、DNSリークは設定や通信経路などの影響によって、本来利用する予定だったDNSサーバとは異なるDNSサーバへ問い合わせが送信される状態を指す。
DNS設定改竄との違い
DNS設定改竄は、マルウェア感染や不正アクセスなどによって端末やルーターのDNS設定を書き換える攻撃である。
DNSリークは攻撃を前提とするものではなく、設定や実装、通信環境などによって発生する現象である。
DNSリークに関連する用語
まとめ
DNSリークとは、本来利用する予定だったDNSサーバではなく、意図しないDNSサーバへDNS問い合わせが送信される状態を指す業界用語である。
現在ではVPN利用時の問題として説明されることが多いが、これはVPN利用時に匿名性やプライバシーへの影響が最も大きく現れるためである。
DNSリークが発生すると、閲覧先ドメインが第三者に把握される可能性があるほか、DNSポリシーやDNSフィルタリングが期待どおり機能しない場合もある。
また、DNSハイジャックやDNS設定改竄とは異なる概念であり、それぞれ原因や対策も異なることを理解しておくことが重要である。
