セキュリティポリシー回避型 VPN クライアントがネットワーク運用上大きなリスクに

This post is also available in: English (英語)

概要

本稿では、パロアルトネットワークス脅威インテリジェンス調査チーム Unit 42 のリサーチャーがトンネリングソフトウェア X-VPN について調査した結果を共有します。同ソフトウェアは様々なテクニックを駆使し、セキュリティ対策、ポリシー実施対策を回避していました。 X-VPN は、インターネット検閲やトラフィック ポリシー適用ポイントを回避するために使用可能な仮想プライベートネットワーク (VPN) のひとつで、ネットワークオペレータや VPN ユーザーに大きなリスクをもたらします。

X-VPN は、現在もっとも捕捉のむずかしい回避型 VPN クライアントの 1 つで、セキュリティポリシーを回避するために様々な一般プロトコルやサービスを模倣します。この結果、保護を提供するシステムがデータパケットを検査できず、悪意のあるトラフィックのネットワーク侵入や機密情報の内部ネットワークからの流出を許してしまう可能性があります。

回避型 VPN 接続のリスク

X-VPN のような VPN クライアントを使用するとユーザーもネットワーク オペレータもリスクにさらされます。VPN クライアントを使用するのであれば、次のリスクについて考慮すべきです。

  • 信頼できる VPN プロバイダか: VPN を使用するとクライアントからのデータはすべてさまざまな分析とデータのログオンを実行可能な第三者に送信されます。
  • ホスティングしている国の管轄はどこか: VPN プロバイダの所在地によっては、ホスティングしている国が VPN プロバイダに特定のユーザーデータを政府と共有するよう要求することがあります。X-VPN の分析中、多数の出口ノードがさまざまな国に分散していることがわかりました。これらは多くの場合、VPN クライアントによって自動的に選択されます。
  • トラフィックを制限していないか: VPN プロバイダはユーザーからのデータを完全に制御できるため、さまざまなサービスへの接続を抑制したり、ブロックしたり、特定のコンテンツプロバイダを他のコンテンツプロバイダより優先させることができます。
  • マルウェアとスパイウェアのリスク: VPN クライアントはサードパーティのソースにアクセスすることが多く、マルウェアやスパイウェア プログラムがホストに感染する可能性があります。とくに、 VPN によってカスタム暗号が使用されていると、セキュリティ監視システムはインバウンド トラフィックに悪意のあるペイロードが含まれているかどうかを識別することができません。
  • クライアントを出口ノードとして使用していないか: VPN クライアントのなかには、別のエンドユーザーのインストール済みクライアントを介してユーザーに接続許可をするものがあります。そのような場合、出口ノードとして使用されるエンドユーザーは、他の VPN ユーザーが実行するあらゆる違法行為に対し、責任があるものとみなされる可能性があります。

VPN 関連リスクを考慮すると、ネットワークオペレータはネットワーク内の VPN 使用状況を監視・制御できることが重要です。以下のセクションでは、X-VPN の詳細分析中に見つかった回避手法について説明します。

X-VPN による回避テクニック

X-VPN の回避テクニックは TCP および UDP ペイロードのカスタム暗号使用、HTTP、SSL、FTP、NTP、SMTPなどのほかのアプリケーション層プロトコルの模倣に基づいています。私たちの調査によれば、X-VPN はパブリック クラウド プロバイダによってホストされている推定 1 万台のサーバーインスタンスを使用し、毎日 300-500 台のサーバーインスタンスを新しいパブリック IP アドレスに置き換えています。

データパケットの実際のペイロードを隠すため X-VPN は一般的なサービスへの接続を模倣します。たとえば、www.google.com や www.bing.com などへの接続です。

図 1 www.bing.com への Web ブラウジングを真似た X-VPN トラフィック

図 1 に示すように、X-VPN は Bing への Web ブラウジングトラフィックであると思われる HTTP トラフィックを模倣しています。ハイライトしたフィールドはカスタム暗号で暗号化されていて、C2トラフィックとして使用されるか、クライアントソフトウェアといずれかの X-VPN サーバーインスタンスとの間でデータを転送するために使用されます。

図 2 は比較用に www.bing.com への実際の Web ブラウジングトラフィックの HTTP ヘッダを示したものです。

図 2 www.bing.com への実際のトラフィック

同様のテクニックが SSL トラフィックでも使われています (図 3 参照)。X-VPN はたとえば google.com への SSL ハンドシェイクを模倣します。

図3 www.google.com への SSL ハンドシェイクを模倣する X-VPN

一般的なサービスをドメイン名として使用する以外に、X-VPN はたとえば 8v9m.com といったドメインを生成して使用することも確認しました。

ポリシー施行システムをかいくぐってデータをトンネリングするために、HTTP トラフィックや SSL トラフィックを偽装した通信を行うだけでなく、FTP、SMTP、NTP の各トラフィックについても同じやりかたを使い、一見無害なプロトコルのものに見えるカスタムエンコードされたデータをパケット内のフィールドに埋め込んで隠そうとします。

図 4 もそうした例のひとつです。SMTP (Simple Mail Transfer Protocol) の構造は icloud.com と通信しているように見えますが、実際には X-VPN によるデータ通信に使用されています。SMTP カンバセーション内の「FROM」と「TO」のメールアドレスは、カスタム暗号で暗号化された値のように見えますので、本トラフィックは X-VPN の C2 通信用に使われるものと推測されます。

図 4 SMTP トラフィックを模倣した X-VPN

FTP トラフィックにも似た方法が使われます。FTP (File Transfer Protocol) の場合、ユーザー名とパスワードがカスタム暗号で暗号化され、クライアント/サーバー間で捕捉されにくいやりかたで情報をやり取りするために使われています (図 5 参照)。

図 5 FTP トラフィックを模倣する X-VPN

結論 / 緩和策

パロアルトネットワークスは、さまざまなベストプラクティス推奨を組み合わせ、X-VPN をはじめとするプロキシ製品をお客様環境・企業環境で遮断するためのお手伝いができます。パロアルトネットワークスのファイアウォール製品で、X-VPN を遮断するように設定する方法についての詳細はこちらの『Configure Palo Alto Networks Firewall To Block X-VPN (ファイアウォールを設定して X-VPN を遮断する)』をご参照ください (※ 機械翻訳で日本語が提供されています)。