Zoomはどのようにエンドツーエンド暗号化へ移行したか

Zoomのセキュリティはどう進化し、どんな脅威が今も残っているのか。そうした脅威を排除するために、開発元は何を計画しているのか。

RSA Conference 2021にてZoom社が行ったプレゼンテーションは、Zoom Cloud Meetingsにおけるエンドツーエンド暗号化に焦点を当てた内容でした。同社は、開発においてこの問題に焦点を当てている理由、通話の安全性を高めるための計画、今後予定されている新しいセキュリティ関連の新機能について説明しました。

大まかな経緯

パンデミックにより、多くの人が長期間にわたるテレワークへの切り替えを余儀なくされ、親しい人たちや同僚とはビデオ会議ソフトウェアを通じてコミュニケーションするしかなくなりました。そこで一気に需要が伸びたのが、ビデオ会議プラットフォームのZoomです。その人気の高さはセキュリティの専門家もサイバー犯罪者も注目するところとなり、その結果、Zoomのセキュリティが完璧ではないことが知られることとなりました。例えば、Zoomのソフトウェアには攻撃者がカメラやマイクを通じて利用者の行動をこっそり偵察可能となる脆弱性のあることが分かり(英語記事)、ミーティングのURLを知っていればミーティングに参加できるという仕様を悪用して会議に乱入する「Zoombombing」も問題となりました。Zoom社の対応は広範囲にわたって素早い対応を見せましたが、問題は残りました。

Zoomに関する主な不満は、このプラットフォームがエンドツーエンド暗号化(E2EE)ではなく、ポイントツーポイント暗号化(P2PE)を使っていた点にありました(英語記事)。

エンドツーエンド暗号化(E2EE)か、ポイントツーポイント暗号化(P2PE)か

エンドツーエンド暗号化(E2EE)と、ポイントツーポイント暗号化(P2PE)。この2つは似たようなシステムに見えるかもしれません。確かにどちらも、やり取りされるデータを暗号化します。しかし、E2EEではメッセージが送信者のデバイス上で暗号化され、受信者のデバイス上でしか復号されないのに対し、P2PEの場合は利用者のメッセージにサーバーからアクセス可能です。この細かな違いは以下のようなトラブルの可能性をはらんでおり、プレゼンテーションの中でZoomの開発者たちもその点に注目していました。

  • サイバー犯罪者がサーバーに侵入し、そこに保管されている暗号鍵を盗み、本物の招待者になりすましてミーティングに参加したり、メッセージを偽装したりする可能性がある。
  • クラウドサービスプロバイダーやZoom社の従業員が、機に乗じて暗号鍵にアクセスし、利用者のデータを盗む可能性がある。

家族や友達とのプライベートな会話を公にしたい人などいませんし、ビジネス上の社外秘の会話ならばなおさらです。暗号鍵を盗んだ人が鍵を盗み聞きのためだけに使っていた場合、 検知は非常に難しくなります。

E2EEは、復号鍵の保管場所を利用者のデバイス上に限ることで、これらの問題を解決します。つまり、サーバーをハッキングしても、侵入者はビデオ会議を盗聴できません。

したがって、メッセンジャーアプリの事実上の標準となったE2EEにZoomも対応してほしいと多くの人が望んだのは当然のことでした。

Zoomのエンドツーエンド暗号化:現在の状況

開発元はこうした批判に耳を傾け、E2EEの実装も含めてプラットフォームのセキュリティ改善へ向けて動き出しました。

Zoomは2020年秋から、チャットだけでなく音声およびビデオ通話にもE2EEを使用しています(英語記事)。E2EEが有効になっている場合、参加者のデータはミーティング用の暗号鍵で保護されます。この鍵はZoomのサーバーには保管されないので、開発元であっても会話の内容を復号できません。Zoomプラットフォームに保存されるのは、暗号化されたユーザーIDと、会議に関する一部のメタデータ(通話時間など)だけです。

外部接続から保護するため、ミーティング主催者のアプリからほかの参加者へ自動的に信号を送るというハートビート機能も導入されました。この機能に含まれるものの一つは、主催者が現在の暗号鍵を送信したミーティング参加者のリストです。このリストに含まれていない人がミーティングに参加すると、すぐに参加者全員が「何かがおかしい」と気付きます。

部外者をミーティングに入れないため方法として、このほかにも、参加者が全員集まったところでミーティングをロックする方法があります(その名もずばり「ミーティングをロックする」という機能です)。ミーティングのロックは手動で行う必要があります。一度ロックすれば、ミーティングIDとパスワードを持っている人も含め、誰も参加できなくなります。

このほか、中間者攻撃を防ぐために、暗号鍵を交換できるようにもなっています。ミーティング主催者は、現在のミーティング暗号鍵に基づいたセキュリティコードをいつでも生成できます。ボタンを一つクリックすればセキュリティコードが生成され、ほかのミーティング参加者に対しても自動的に同じコードが生成されます。後は、主催者がこのコードを読み上げて、全員のコードと一致しているかどうかを確認するだけです。全員のコードが一致していれば、全員が同じ鍵を利用している、つまり部外者が盗み聞きしていないということです。

最後に紹介する機能は、ミーティング主催者が退席して誰かが主催者の役目を引き継いだ場合、引き継ぎがあったことをアプリが報告する機能です。ミーティング参加者が不審に感じた場合は、問題がないかどうかミーティングを一時中断することができます。

もちろん、友だちとZoom飲み会をしているだけなら、このようなセキュリティ機能をすべて使う必要はありません。しかし、ビジネス関連の重要情報やその他秘密の情報を話し合っている場合には、これらの保護機能が役立ちます。重要なミーティングに参加するメンバーは、このような機能があることを認識し、使い方を知っておきましょう。

上記のような新機能を導入したにもかかわらず、Zoomの開発元は、やることはまだまだあると認めています。RSA 2021のセッションでは、今後の開発計画も明かされました。

Zoomの計画

Zoom社では、まだ効果的な対策を実装できていない脅威を多数認識しています。そのうち一つは、招待された人になりすました部外者がミーティングに入り込む問題です。そのほか、E2EEによる保護では一部のメタデータ(通話時間、参加者の名前、IPアドレスなど)を攻撃者が入手するのを阻止できないという問題もあります。Zoomのプログラム自体の脆弱性も、脅威の一つです。理論的に、サイバー犯罪者が悪意あるコードをZoomに埋め込むことは可能です。

これらの脅威を念頭に、Zoomの開発元は以下の目標を掲げました(英語資料)。

  • 招待された人と承認された人以外は誰もイベントに参加できないようにする
  • イベントから除外された人がイベントに再接続できないようにする
  • ミーティングへの参加を許可されていない人からの干渉を阻止する
  • 正当な参加者から、不正使用についてZoomのセキュリティチームへ報告できるようにする

ロードマップ

上記の目標を達成するため、開発元は4つのステージからなるロードマップを作成しました。ステージ1は、実装済みです。前述のとおり、ミーティングの暗号鍵が利用者のデバイス上にしか保管されないようにすると同時に、部外者がミーティングに参加できないように保護手段を改善しました。

ステージ2では、Zoomのサーバーに依存するユーザー認証ではなく、第三者のアイデンティティプロバイダー(IDP)が関わるシングルサインオン(SSO)をベースにしたユーザー認証の導入を計画しています。

これにより、侵入を目論む者がZoomサーバーを掌握した場合でも、利用者のIDを偽造できなくなります。招待された人になりすます誰かが新しい公開鍵を持たずにイベントに参加しようとすると、ほかの参加者にアラートが通知されます。

ステージ3では、認証済みで監査可能なデータ構造にすべてのIDを保管し、すべての利用者が一貫してIDを参照可能となり、なりすまし攻撃を検知できるようにします。目的は、中間者攻撃からの保護を強化することです。

最後のステージ4では、新しいデバイスから接続したときのIDチェックを簡単に行えるようにする計画です。新しいデバイスをリンクするに当たっては、例えば、信頼されたスマートフォンやコンピューターの画面に表示されたQRコードをスキャンするなどで、身元の正当性の確認が求められるようになります。これにより、デバイスを他人のアカウントにリンクさせる行為を阻止することができます。

犠牲を求めないセキュリティ

セキュリティメカニズムを追加で実装するときには、一般の利用者にどのような影響が及ぶのか考慮することが重要です。Zoomの開発元も、この側面を考慮しています。例えば、提案の一つに、パーソナルデバイスクラウドの使用があります。このような技術は、新しいデバイスをアカウントへ追加するプロセスを簡素化すると同時に、その保護にも役立ちます。

例えば、通常はZoomでの打ち合わせにコンピューターを使っている人が、アプリをダウンロードしてスマートフォンからサインインした場合、次にコンピューターでZoomを開くと、新しいデバイスがサインインしたことが表示されます。これを承認すると、どちらのデバイスも一つのクラウドにリンクされるので、他のミーティング参加者は、誰かが侵入したのではなくあなたが参加したのであると分かります。

また、デバイスクラウドでは、どのデバイスがあなたのアカウントにログインしているのかをチェックしたり、任意のデバイスの信頼ステータスを取り消したりもできます。これに加え、ミーティングの途中でE2EEへ切り替えるオプションなど、多数の有用な機能の追加が計画されています(英語資料)。

Zoomはさらに安全になるか?

Zoomのセキュリティは、これからも継続して改善されます。外部からの干渉に対して保護を講じるため、Zoom社はこれまでにかなりの措置を施してきましたが、さらに多数の保護手段を開発中です。別の話ではありますが、Zoomがセキュリティに使いやすさをブレンドしようとしているのはよいことです。

当然ながら、多くはZoomの利用者にかかっています。オンライン上では何でもそうですが、ビデオ会議もまた、常識のほかに、利用可能な保護メカニズムに関する知識が必要です。Zoom社からの警告を受け止め、なにか不審な点がある場合や情報の漏洩を無視できない場合には秘密情報を含む会話を避けることが重要です。

ヒント