【WP for IT Pros】Windows Phone のセキュリティモデル 1 ~「チャンバー」という考え方(1)

Windows Phone のセキュリティモデルについて断片ばかりで系統的に語ったことが無かったので、あらためて。

参考:Download: Windows Phone 7.5 IT Papers - Microsoft Download Center - Download Details

以下の図は、Windows Phone のセキュリティモデルを模式的に表したものです。

image

Windows Phone のセキュリティモデルは「分離の原則」と「最小限の権限」という思想のもとに設計されており、「チャンバー」と呼ばれるコンセプトに沿って実装されています。

ここで言う「チャンバー」とは、心室や心房などのように仕切られた部屋を意味しています。Windows Phone 上で動作するアプリケーションやドライバーは、必ずいずれかのチャンバーに隔離され、チャンバーごとに定義されたアクセス権限のみを行使することができます。これにより Windows Phone で動作するアプリケーションの独立性と必要最小限のパーミッションによる動作が保障されています。

チャンバーはセキュリティポリシーの定義によって以下の4つのタイプに分けられています。

TCB(Trusted Computing Base)チャンバー image

最も高度な権限を持ったチャンバー。Windows Phone 内のリソースの大部分に無制限にアクセスすることができる。TCB チャンバーはポリシーを変更したり、セキュリティモデルを強制することができる。カーネルとカーネルモードドライバーは TCB チャンバー内で動作する。TCBチャンバー内で動作するアプリケーションを最小限に抑えることが Windows Phone へのアタック面を最小限に減らすことになる重要な要素である。マイクロソフトだけがTCBチャンバーにアプリケーションを追加できる。

ERC(Elevated Rights Chamber)

セキュリティポリシーを除く全てのリソースにアクセス可能なチャンバー。ERC は、他の Windows Phone アプリが使用する機能を提供するサービスやユーザーモードドライバを対象にしている。マイクロソフトだけが ERC にソフトウェアを追加することができる。

SRC(Standard Rights Chamber)

SRCはプリインストールアプリケーションに与えられる既定のチャンバーである。デバイス全体に影響するサービスを提供するアプリを除き、すべてのプリインストールアプリケーションはSRCで動作する。マイクロソフトの OUTLOOK Mobile 2010 はこのタイプのアプリの例である。

LPC(Least Privileged Chamber)

LPC はマイクロソフト以外のアプリ開発者が Marketplace を通して提供できるアプリケーションに与えられる既定のチャンバーである。このチャンバー内に存在するアプリケーションは、分離ストレージへのアクセスを含めた最小限の権限を持っている。チャンバー内で動作するアプリケーションは他のアプリケーションのメモリ領域やストレージなどにアクセスすることはできない。

以下につづく

 【WP for IT Pros】Windows Phone のセキュリティモデルについて~「チャンバー」という考え方(2)