事例の概要#

Ennetcomは、オランダに拠点を置く通信販売会社だった。同社は、PGPで暗号化されたメール通信が可能なBlackBerry端末を販売していた。端末にはPGPの暗号化ソフトウェアがプリインストールされ、利用者は端末同士で暗号化されたメールをやり取りできた。

販売された端末は約2万台。利用者の多くはオランダを拠点とする組織犯罪の関係者だったとされている。

2016年4月、オランダ警察はEnnetcomの経営者Danny Manupassaを資金洗浄の容疑で逮捕し、同社のサーバーを押収した。サーバーには7TBのデータが保存されていた。

タイムライン#

時期出来事出典
2016年4月Ennetcomの経営者が逮捕され、サーバーが押収されるThe Hacker News
2017年1月オランダ検察が、押収した端末内のPGPメッセージの一部を復号できたと発表The Hacker News
2017年3月押収したサーバー上の360万件のメッセージが読める状態になったと発表Security Affairs

特定はどうやって進んだか#

鍵は端末ではなくサーバーで生成されていた#

EnnetcomのBlackBerry端末は、PGPでメールを暗号化して送受信する機能を持っていた。利用者から見れば、端末上で暗号化が行われ、通信の内容は端末の鍵で守られているように見えた。

カナダの裁判所に提出された文書によれば、実際には、PGPの鍵ペアは端末ではなくEnnetcomのサーバー側で生成され、同社のBlackBerry Enterprise Serverに保存されていた。

鍵がサーバーに保存されているということは、サーバーを押収した者が、すべての利用者の鍵を手に入れることを意味する。オランダ警察は、押収したサーバーから鍵を取得し、その鍵を使って360万件の暗号化されたメッセージを復号した。

ネットワーク構成の問題#

EnnetcomのBlackBerry端末は、利用者同士で直接通信していたわけではない。すべての通信は、Ennetcomが運営するBlackBerry Enterprise Serverを経由していた。この構成は、端末の管理を一元化するために選ばれたものだ。

しかし、通信を中継するサーバーが鍵も持っているという構成は、暗号化の目的を根底から覆す。サーバーの運営者が鍵を持っていれば、通信の中身を読むことができる。警察に押収されれば、捜査機関が読むことができる。

弁護側の主張#

Ennetcom側は、押収に対して異議を唱えた。報道によれば、同社は「捜査機関による押収は虚偽の前提に基づくものだ」とウェブサイト上で主張した。

この種の事案では、押収されたサーバーに鍵が実際に保存されていたかどうかが、裁判で争われるポイントになる。報道によれば、警察が実際に鍵を使ってメッセージを復号できたことは確認されている。

どうすれば防げたか#

失敗点起きたこと防げたはずの対策
鍵の生成場所PGPの鍵ペアが端末ではなくサーバーで生成された鍵ペアは端末上で生成し、秘密鍵をサーバーに送らない
鍵の保管場所生成された鍵がBlackBerry Enterprise Serverに保存された秘密鍵をサーバーに保存しない。端末から出さない
通信の中継構成すべての通信がEnnetcomのサーバーを経由した中央サーバーを経由しないP2P通信、またはEnd-to-Endで鍵が端末にのみ存在する設計にする
サーバーの押収可能性すべての利用者のデータが一か所に集約されていた分散型の設計にするか、サーバーに保存されるデータを暗号化した状態にする

脅威モデル別の教訓#

暗号化されたメッセンジャーを使っている一般の利用者にとって、この事例の核心は「鍵を誰が管理しているか」という問いだ。

End-to-End暗号化を謳うサービスでも、鍵の生成と保管がサーバー側で行われている場合、サービス提供者は理論上、通信を復号できる。サービス提供者が押収や侵害を受ければ、すべての利用者の通信が露出する。

現代のメッセンジャーでは、この問題に対する設計上の答えが分かれている。SignalとSimpleXは、鍵ペアを端末上で生成し、秘密鍵をサーバーに送らない。Telegramの「秘密チャット」以外の機能は、E2EEを標準としていない。Ennetcomの構造は、現代のメッセンジャーの鍵管理設計と比べることで、その問題点が明確になる。

鍵を自分の手元に置くことは、E2EEの本質である。サービス提供者が「暗号化されている」と説明しても、鍵を誰が持っているかを確認しなければ、その説明は検証できない。

出典#