先週末、Facebookは司法省から被疑者の音声通話を盗聴するための「暗号の解除」に協力するよう要請されたものの拒否した、とロイターが報じた。記事では、暗号通信へのバックドアを求める政府の要請に警告すべきだとしているが、FacebookがMessengerの暗号を解除するよう命令されるとは考えにくい。むしろ、現実はもっと複雑だ。
この盗聴命令や関連する司法手続きは、カリフォルニア州フレズノ市のギャング団「MS-13」の捜査に関連したものだ。その詳細は完全に機密とされているため、政府がFacebookにどのような盗聴への協力を要請しているのかは正確には把握できないが、Messengerの仕組みからその可能性は推測できる。本稿では、今後の展開を予測し、本件がが暗号化に関する前例として拡張されるべきではない理由について説明したい。
政府が暗号化を「破壊」しているわけではないと主張しつつ、実質的にユーザのセキュリティを損ねる取り組みを進めていることに警戒を強めなくてはならない。Messengerをセキュアなコミュニケーションのために利用している人はほとんどいないとは思う(し、確かにおすすめできない)が、こうした動きが、セキュアなツールを攻撃するための前例として利用されることが懸念される。
基本的事実
MessengerはFacebookのフラッグシップ・チャット製品である。テキストメッセージやステッカーのやり取り、ファイルの送信、音声・ビデオ通話ができる。しかし、SiginalやWhatsapp(こちらもFacebook製品)とは異なり、「セキュア」な暗号化コミュニケーションツールと謳われているわけではない。Messengerは「秘密の」テキストチャットを可能にするオプションを設けており、Signalのプロトコルが採用されている(Whatsappでもこれが用いられている)。
しかし、Messengerの音声通話にはエンド・ツー・エンド暗号化のオプションには含まれていない。
ここで問題になるのは、政府によるFacebookへのMessenger音声通話の盗聴支援要請だ。Messengerのプロトコルは公開されていないものの、その基本的な仕組みや、本当にセキュアなメッセンジャーとの違いはある程度理解している。しかし、まずはそれを理解する上で必要となる背景情報として、Messengerの音声通話以外の通信の処理について説明しよう。
Messengerで友人にテキストチャットを送信すると、そのユーザのクライアント(たとえばスマートフォンアプリ)はFacebookだけがそのメッセージを読めるように暗号化した上で、Facebookにメッセージを送信する。Facebookはメッセージをログに記録し、宛先の受信者だけが読めるように暗号化して転送する。政府がこの会話を閲覧しようとした場合、Facebookは転送の前にすべてのメッセージを見ているので、同社は(盗聴命令に応じて)チャット内容をすべて転送することも、(捜索令状に応じて)保存しているチャット履歴を提出することもできる。
しかし、Messengerの音声通話は処理が異なる。Messengerは音声(およびビデオ)接続にWebRTCという標準プロトコルを使用している。WebRTCは、Messenger上で、Facebookのサーバを経由しない2者間の通話接続を確立する。主にコストや効率、遅延、音切れの問題による理由なのだが、Messengerの音声通話データは2者間の最短ルートを通る。音声データは「セッションキー」で暗号化され、経路上の詮索好きなネットワーク管理者には盗み聞きできないようになっている。
この際、VoIP(Voice over IP)呼び出しアプリケーションでは一般的な2ステップ処理が行われる。まず、2者がそれぞれ中央サーバと通信し、その中央サーバが2者間の直接接続を支援し、その接続が確立された後に、実際の音声データが(通常は)最短経路でやり取りされる。
しかし、Messengerでは、通話が開始される際に、音声通話に関連する情報がFacebookのサーバを経由する。そのデータには音声データを暗号化するセッションキーが含まれている。
これはSignalやWhatsapp、iMessageといったセキュアなメッセンジャーアプリとはまったく異なる。これらのアプリケーションは、、イニシャルセッションキーを通話相手以外には読み取れないように暗号化するプロトコルを使用している。
したがって、たとえFacebookが暗号化されたデータを保持していなかったとしても、何らかの方法でデータを入手すれば、それを復号できると考えられる。言い換えれば、2者間の音声データが暗号化されていたとしても、実際には通話相手以外の第三者――この場合はFacebook――がセッションキーを使って復号することができてしまう。これは我々が呼ぶ「エンド・ツー・エンド暗号化」ではない。
懸念事項
上記の技術的理解がおおよそ正しいとすれば、Facebookは技術的改良なしに、解読した音声通話を政府に引き渡すことはできない。問題は、どのような技術的改良が必要となるのか、それはFacebookユーザ、そして全世界のユーザのセキュリティにどのような影響を及ぼすのかという点である。政府がFacebookに盗聴の協力を求めるとすれば、少なくとも以下の4つのシナリオが考えられる。
- Facebookに被疑者の通話のセッションキーを保持させ、それを政府に引き渡すよう強制する。政府はそのキーを使用して、被疑者のISP(本件ではモバイルプロバイダになると思われる)が別途取得した音声データを解読する。
- 被疑者の携帯電話からMessengerの音声データをFacebookのサーバを経由するようルーティングし、セッションキーをキャプチャしてデータの復号に使用する中間者攻撃をFacebookに実施させる。
- 被疑者のデバイス上の会話を録音し、直接政府に送信する特別仕様のMessengerアップデートを被疑者だけに実施するようFacebookに強制する。
- 被疑者の会話を記録し、解読したデータを政府に引き渡す手法を開発するようFacebookに要請する。
おおよそ、これらのシナリオは、AppleとFBIが対立したサンバーナディーノの事件に類似している。この事件では、政府は捜索令状(本件は盗聴命令)に基づきテクノロジー企業に製品の改良を強く求めた。法律面での大きな違いは、Appleの場合には全令状法(All Writs Act)に基づく命令であったが、今回は政府はほぼ確実に盗聴法18 U.S.C. § 2518(4)に頼っているという点である。Appleの事件で見られたように、全令状法は、政府が既存の裁判所命令を執行するために必要な不定形の命令(捜索令状を含む)を裁判所に請求できる根拠とされた法規である。一方、盗聴法における技術的支援規定は、限定的かつ具体的なものであり、通信サービスプロバイダには「控えめで、サービスへの干渉を最小限に抑えつつ、傍受を達成するのに必要となる技術的支援」の提供を義務づけられている。
では、必要とされる技術的支援を提供する義務はどこまで適用されるものなのだろうか。また、それは上記4つのシナリオにも適用されうるのだろうか。この点に直接に言及した司法判断は把握していないが、第9巡回区控訴裁判所は、有名な事件において「干渉を最小限に」という文言を「ビジネスの一環として顧客に提供されるサービスを完全に中断する状況には拡張されない」と解釈している。さらに、同法廷は、全令状法における判例を適用するにあたり、「傍受命令は政府を支援する企業に過度の負担を課すものではない」と述べている。
もちろん、政府は上記4つの要請は不当な負担を課すものではなく、Messengerサービスに重大な混乱を引き起こすものでもないと主張するだろう。Facebookの関与が被疑者の会話のセッションキーを保存することだけに限定されているのであれば、こうした理屈は押し通されてしまうかもしれない。
おそらくこの情報はすでにFacebookがキャプチャしうる方法でFacebookのサーバを通過している。1つ不明なのは、FacebookがMessengerの音声通話におけるセキュリティの確実性を確保する上で、自身の役割をどのように捉えているかという点である。Facebookが、Appleのように、システム上のセキュリティ機能のバイパスを困難にしようとしていれば、政府への協力はシステムに大きな混乱を生じさせる可能性がある。しかし、政府は、この文脈において、Facebookは、Googleとユーザ間の暗号化のためにTLSを使用するGmailなどのウェブメールプロバイダと同じだと主張するかもしれない。Googleはこうしたデータを解読するキーをもっているため、盗聴に応じることができる。Facebookの役割はまったく同じではないが、セッションキーを取得できる立場にあることは確かだ。
Facebookがカスタムアップデートを要請されるシナリオでは、Appleの事件の際にセキュリティ専門家が自動セキュリティアップデートの信頼性を損ねるリスクについて指摘したように、同社はさらに強烈な議論を巻き起こすことになるかもしれない。コンピュータセキュリティは薄氷の上に立っており、信頼性の高いチャネルを利用して被疑者の携帯電話を監視装置に変えようとすれば、悲惨な結果を招くことになる。政府がFacebookに「何とかしろ」とだけ要請するのであれば(シナリオ4)、政府は他の方法で監視を実施できない理由を証明していないため、Facecbookは支援の必要性とその実現可能性について疑義を唱える理由にはなる。
いずれにしても、フレズノ連邦裁判所で何が起こっているのかについて、市民に伝えられなければならないことは確かだ。ロイターの記事は、Facebookがいくつかの点で命令に反論していることが示されており、我々EFFも、サンバーナディーノでそうしたように、法廷助言者として介入する機会として歓迎する。しかし我々はFacebookに対し、少なくとも裁判所が本件における法的議論について開示するよう最大限努力することを期待したい。また、盗聴法やその他技術的支援法の踏み込んだ解釈に関する問題に、法廷助言者の参加を許可するよう裁判所に要請していただきたい。
最も重要な点は、政府が強力な暗号化とデジタルセキュリティを弱めるために、本件におけるいかなる判断をも武器として利用することを許してはならないということである。政府は長らく、「妥協点」が存在し、企業は「責任ある暗号化」に取り組むべきだと主張している。政府は、適法な裁判所命令に基づいて平文化できる暗号データの例として、嬉々としてTLSを使用するサービスを取り上げている。同様に、サンバーナーディーノの事件では、FBIはAppleに対し、技術的にiOSの「暗号を破る」ことを要求したわけではなく、暗号を保護する別のセキュリティ機能(訳註:パスコードを10回誤入力するとデータが消去される機能)の見直しを要求していた。これらは暗号化そのものを改竄するものではないが、ユーザを危険に晒す要求である事実に変わりはない。
我々は今後もこの事件に注目し、ユーザのセキュリティを損ねるあらゆる取り組みへの対抗を続けていく。
Publication Date: August 23, 2018
Translation: heatwave_p2p