VPN漏洩確認:VPNが稼働していることを確認する方法

残念ながらVPNでIP漏洩が発生しないとは言い切れません。このガイドではIP漏洩を探知・防止し、常に情報を保護する方法をご紹介します。 共有

IP leaks

人気の大手VPNを利用すればIPアドレスとネットの活動をしっかり隠せると思っていることでしょう。残念ながら、最も高価格で高度なVPNを使ってもブラウザやオペレーティングシステムからのIP漏洩を防止することはできません。データや個人情報などが安全に隠されていることを確認するためにはシステムがIP漏洩やDNS漏洩などに脆弱でないことを確認し、試験で発見されたIP漏洩をストップする必要があります。

DNS漏洩、IP漏洩とは

インターネットなどのネットワーク内にある端末にはすべてIPアドレスという固有識別子があります(こちらのツールを使えばあなたのIPアドレスを確認することができます)。サーバーが1つ以上のサイトを保存できるようにするため、また、番号ではなく言葉を入力してユーザーがサイトにアクセスしやすくするために、DNS(ドメイン・ネーム・サービス)サーバーはテキスト(アドレス)を数字列(IPアドレス)とサーバー上の異なるフォルダに変換します。

特定のウェブサイトアドレスにアクセスしようとすると、使用しているブラウザはウェブページのURLを数字列(IPアドレス)と特定のサーバー内の宛先のフォルダに変換することを要求します。ファイルの有効な宛先を返信したDNSサーバーにリクエストが送信され、ブラウザがロードします。この一連のプロセスをDNS解決といいます。

DNSサーバーはブラウザとオペレーティングシステム内でブラウザの設定、ローカルDNSサーバー、HOSTSファイル、Netbiosなどの項目別に優先順位が決められた結果、DNSサーバーが解決として選ばれます。IPアドレスのプライバシーやセキュリティーについて考える際、サーバーが階層的に選択されるということが重要になってきます。

仮想プライベートネットワーク(VPN)を利用して接続を保護するとき、DNS解決はあなたの利用しているVPNプロバイダに設定されているサーバーで行われるべきです。しかしいつもそのようになるわけではありません。

DNS解決が別のサーバーで行われると、DNS解決リクエストが発信されたかという情報をもとにIPアドレスを割り当てることができるのです。あなたのIPアドレスが分かってしまうということです。ですからネットの匿名性やプライバシーを保護するためにVPNを使う意味がなくなってしまうのです。同じように、中間者攻撃のようにサードパーティはあなたのDNSリクエストを盗聴することができる場合、安全なカスタムDNSサーバーを利用していてもあなたの情報を取得できてしまいます。このような事態を避ける手段の一つとしてDNSCryptが挙げられます。あなたのシステムとDNSサーバー間の通信を暗号化するものです。しかしIPアドレスの漏洩を防止するためのものではありません。

漏洩を探知する方法

よくある漏洩の原因や種類について見ていく前に、あなたのシステムが脆弱かどうか確認する方法を知っておくのが大切です。

ネット上にはあなたのシステムがDNS通信やIPアドレスを漏洩しているか素早く試験できるサイトやサービスがあります。IP漏洩試験ツールを使ったことがない方は弊社が開発したIP漏洩試験ツールを使って接続のセキュリティーをご確認ください。

どのツールを使っても試験方法は同じようなものです。

  1. VPNクライアントを無効にしてウェブブラウザで試験サイトを開きましょう。
  2. 表示された公共IPとDNSサーバーアドレスをメモしてください。
  3. VPNクライアントに接続して同じサイトを開きます。ページを更新してください。

VPNにきちんと接続できている場合、先にメモしておいたIPアドレスやDNSサーバーと違う情報が表示されるはずです。同じ情報が表示された場合、システム内でプライバシーの漏洩が発生していることを意味します。

以下のスクリーンショットから分かるように、公共IPアドレスの欄には何も表示されていません。つまり、IPアドレスやDNS情報は保護されているということです。

しかしIP漏洩探知ツールを使ってVPN接続を確認したときにアドレスがきちんと匿名化されていなかったと分かった場合、個人情報の漏洩の原因とその対処方法は以下の通りです。

 

1.ブラウザのIP漏洩

IP漏洩で最も頻繁に見られる原因はWebRTCによるブラウザの脆弱性によるものです。WebRTCはインストールされている拡張機能やプラグインがなくてもチャットやP2Pファイル共有などのウェブアプリケーションを許可するAPIのことです。しかしこれには事情があるのです。

WebRTCに対応しているブラウザ(ChromeやFirefoxなど)はSTUNサーバー(Session Traversal Utilities for NAT)を利用して外部のネットワークアドレスを取得しています。あなたの本当のIPアドレスを知りたいというウェブサイトはこのSTUNサーバーにUDPリクエストを作成する小さなJavascriptを意図も簡単に隠してしまい、利用可能なネットワークインターフェイスにこのようなリクエストをルートしてしまうのです。

このような状況では本当のIPアドレスとVPNのIPアドレスが両方とも公開されてしまいます。また、このようなコードを悪意のないサイトに埋め込むのはとても簡単なのは心配な点です。さらに、このようなリクエストは通常のHTTPリクエストとは違うのでデベロッパーコンソールが探知できず、ブラウザプラグインは必ずしもこのような種類の漏洩をブロックできるとは限りません(ブロックできると宣伝していても、です)。

WebRTCでプライバシーが脅かされるのを防止する方法は2つあります。

  1. 確立されたVPN接続外で作成されたリクエストをブロックするようにしっかりとファイアウォールのルールを設定する。
  2. WebRTCに対応しているブラウザでWebRTCを無効にする。普段使用しているブラウザのプライバシー設定を変更するか、GoogleでWebRTCを無効にする方法を検索しましょう。たくさんのチュートリアルやガイドが見つかるはずです。

2.VPNからのIPアドレスの漏洩

VPN接続が有効でも、インターネットサービスプロバイダに提供されているDNSサーバーに頼るのはよくありません。プライバシーが危険にさらされる可能性があるからです。Googleが提供しているような公共のサーバーを使って見るのもいいですが、VPNサービスの料金を支払っているなら専用サーバーに安全なDNS解決が含まれているはずです。

また、IPv6に対応していないVPNサービスプロバイダが漏洩の原因になっていることもあります。IPv4プロトコルは32ビットのアドレスを使用していますが、世界中にある2の32乗もの端末で固有の公共IPアドレスを受信できるようにしています。インターネットは今まで以上に急成長していますからこのようなアドレスが足りなくなったため、IPv6が導入されたのです。128ビットアドレスを使用しているので、利用可能なアドレスの数は2の128乗もあります。IPv4よりはるかに多いのです。

残念ながら新しいIPv6プロトコルの普及はあまり進んでいまs年。大手ウェブサイトの中には両方のプロトコルに対応していてクライアントシステムごとに適切なチャネルを使用しているものもあります。問題はVPNサービスプロバイダがIPv6に対応しておらず、この問題を解決しないで無視している場合です。

このような時代遅れのVPNサービスを使っていると、IPv4のみに対応しているサイトだけしかVPNを使って安全にアクセスすることができません。しかしIPv6が有効なサイトではVPNはリクエストをトンネリングできないのでブラウザは暗号化されていないテキストをVPN通信以外の通信で送信することになります。本当のIPアドレスが公開されてしまうということです。

IPアドレスがVPN通信から漏洩されてしまうのを防ぐためには以下の対策を行いましょう。

  1. 専用のDNSサーバーをDNS漏洩保護のあるVPNを利用しましょう。
  2. IPv6に対応しているか、最低でもオペレーティングシステム内でIPv6を無効にするなどの対策を提供しているようなVPNを利用しましょう。
  3. オペレーティングシステムでIPv6を無効にしましょう。色々な端末でこのような操作を行う方法はネット上に掲載されています。

3. オペレーティングシステムからのDNS漏洩

Microsoftの商品を気に入っている人もいれば嫌っている人もいますが、実際には多くの人のデスクトップパソコンがWindows端末ですね。しかしWindowsでVPNを使う際には注意すべきポイントがいくつかあります。

DNS解決はオペレーティングシステムで既定の優先順位に基づいて行われています。一番最初はHOSTファイルで、DNSマッピングを指定することができます。DNSマッピングが利用できない場合、オペレーティングシステムはネットワーク接続が設定されたDNSサーバーを使いますが、それでもリクエストされたURLが解決されない場合はNetbiosにリクエストが送信されます。最も優先順位の高いDNSサーバーがリクエストを解決できない場合、Windowsは他のサーバーに解決を要求しないのです。

しかしWindows10の場合、リクエストは利用可能なすべてのネットワークアダプタに送信され、一番先に対応したDNSサーバーがブラウザにウェブアドレスを表示します。つまりVPNに接続されていてもDNS解決リクエストはインターネットサービスプロバイダのサーバーに送信されてしまい、脆弱になってしまう可能性があるということです。

WindowsでVPNを利用する際に検討したいもう一つのポイントはIPv6のアドレスに関することです。前の項で説明した通りです。WindowsはIPv6に対応していないIPv4ネットワークにあるホストに対応するため、Teredoトンネリングを使用しています。そのため、VPNネットワーク外にDNSを漏洩させているかもしれません。このような漏洩を防止するためには以下のステップに従ってください。

  1. Teredoトンネリングを無効にしましょう
  2. グループプライバシーエディタでスマートマルチホームネーム解決を無効にしてWindows10最適化を無効にしましょう。ただしWindows10ホームベーシックではグループプライバシーを編集できませんのでご注意ください。

IPアドレスとDNS通信が本当にプライベートで安全なものにするためにはVPNは素晴らしい対策方法です。しかし短所がないというわけではありませんから定期的にVPNが効果的に作動しているか確認する必要があります。

これは役に立ちましたか?よろしければシェアしてください!
Facebookでシェアする
これをツイートする