Microsoft Azure Sphere は、IoT(Internet of Things)分野のセキュリティソリューションです。産業向けの装置はもちろん消費者の生活の場にも使われるIoTは、堅牢なセキュリティを備えていることが重要な条件になります。デバイスの制御が失われたり収集している情報が漏えいしたりすると、社会的な問題に発展するリスクが高まるからです。
IoTデバイスセキュリティで重要な7つの特徴を取り上げながら、Microsoft Azure Sphereの概要を紹介します。
Microsoft Azure Spherの構成
Microsoft Azure Sphereは、高度なセキュリティを組み込んだアプリケーションプラットフォームで、ハードウェア、OS、クラウドサービスの構成で提供されます。
ハードウェアとしては、セキュリティで保護されたMCU(Micro Control Unit)であり、OSはカスタマイズされたLinuxベースのAzure Sphere OS、継続的にアップデートが可能なクラウドのセキュリティサービスで構成されています。
MPUとセキュリティサービスに関して、概要を解説します。
Azure Sphere MCU、互換製品のMT3620
Azure Sphere MCUは、リアルタイムの処理機能とOSが統合されています。 Azure Sphere MCUとOSおよびアプリケーションのプラットフォームにより、保護されたIoTデバイスの作成が可能になり、リモートでIoTデバイスセキュリティの更新、制御、監視、および保守を行うことができます。
Microsoft Azure Sphere互換製品には、台湾のMediaTek社による「MT3620」があります。リアルタイムプロセッサとアプリケーションプロセッサを組み合わせたクロスオーバーMCUです。
スペックは最大500MHzで動作するARM Cortex-A7プロセッサ、大容量 L1 キャッシュと L2 キャッシュ、SRAMを備えています。I/Oサブシステム用に最大200MHzで動作するARM Cortex-M4Fプロセッサをデュアルで搭載し、周辺機器にはADC、GPIO、I2S、UART/I2C/SPI、最大12 個のPWMカウンターを利用できます。
MT3620はデュアルバンド 802.11a/b/g/n Wi-Fiワイヤレスサブシステムを搭載しています。セキュリティ機能とWi-Fiの操作は、ユーザーの利用するアプリケーションから分離して実行するため、堅牢性に優れていることがメリットです。
Azure Sphere Security Service
Azure Sphere Security Serviceによって、Azure Sphere MCUはクラウドやWebサービスに対して安全で確実な接続を行います。
正規の承認済みソフトウェアの許可されたバージョンでIoTデバイスを起動させ、セキュリティで保護されたチャネルからOSの更新プログラムをデバイスに自動的にダウンロードおよびインストールします。自動化によって、管理者の作業負荷を軽減します。
Azure Sphere Security Serviceは、パスワードを用いない認証、自動更新プログラム、エラー報告サービスの3つのコンポーネントで構成されます。
セキュリティで重要になる認証コンポーネントを簡単に説明すると、認証時にはMicrosoft Pluton セキュリティサブシステムのハードウェアに対してチャレンジ応答プロトコルを介して接続し、正しいアプリケーションとバージョンを起動します。
認証に成功した後の認証サービスは、保護された TLS 接続で通信してAzure やプライベートクラウドなどのWeb サービスに対して証明書が発行されます。Web サービスでは、デバイスの正当性、最新のソフトウェア、Microsoftによる証明書の発行を検証し、デバイスの安全で確実な接続を実現します。
MicrosoftによるIoTデバイスセキュリティ7つの特徴
セキュリティはMicrosoftが最も注力している分野のひとつです。米国の国防総省のクラウドとしてAzureが採用された実績をはじめ、厳しい環境におけるセキュリティのノウハウを蓄積してきました。Microsoft Azure Sphereに関しても、すべてのIoTデバイスに品質の高いセキュリティを実装するため、7つの特徴を定めています。
7つの特徴から、Microsoft Azure Sphereのメリットを挙げていきます。
特徴1. ハードウェアベースの「信頼の基点(RoT)」
IoTデバイスのセキュリティでは「信頼の基点(Root of Trust、RoT)」が重視されます。物理的かつ論理的なサイバー攻撃に対する安全な設計、保護された小型のデバイス、ハードウェアによるセキュリティの実装もしくは保護が理想的な条件です。
Microsoft Azure Sphereでは、ハードウェアのデバイスとIDを分離不可能にすることで、デバイスの偽造やなりすまし(スプーフィング攻撃)を防止します。 Azure Sphere MCUは、Microsoft の設計によるPlutonセキュリティサブシステムの暗号化キーによって識別されるため、改造することが困難です。このようにして「信頼の基点」の安全性を備えています。
特徴2. エッジコンピューティングにおけるセキュリティの分離
エッジコンピューティングでは、IoTデバイス上で最小のアプリケーションを稼働させて、処理を高速化させます。このとき、セキュリティを担うハードウェアとサービスは、コンピューティング基盤の外側に配置することで、サイバー攻撃に晒される領域を減少させることが可能です。
Microsoft Azure Sphereでは、保護されたSecurity Monitor、PlutonランタイムとPluton サブシステムのようにMicrosoftから提供されたものだけをコンピューティング基盤の外側で実行します。サイバー攻撃のリスクを回避する設計です。
特徴3. 多層防御による保護
ハッカーの攻撃手段が複雑になり、多層防御がセキュリティで求められるようになりました。IoTデバイスにおいても、複数のセキュリティレイヤーを備えた多層防御によって脅威のリスクを軽減させることが必要です。
Microsoft Azure Sphereプラットフォームにあるソフトウェアは複数のレイヤーで構成され、上位のレイヤーがセキュリティで保護されていることを検証します。
特徴4. 動的なコンパートメントによる防御
ハードウェアもしくはソフトウェアのスタック内にコンパートメント(区域)を設けることにより、特定のコンポーネントに侵害などが起きた場合は、システムの他の部分に拡大することを保護します。
Azure Sphere MCUは、ひとつのコンポーネントでセキュリティ違反が生じたとき、他のコンポーネントに対して拡大させない設計で防御を行います。また、制約付きサンドボックスを用いたランタイム環境によってアプリケーションを保護し、プログラムの障害が他に影響を与えないようにします。
特徴5. パスワードではなく証明書による認証
パスワードではなく、証明書に基づいた認証を行うことによって、セキュリティを強化します。暗号化キーで検証された署名済み証明書を使うため、偽造が困難です。
Azure Sphere プラットフォームでは、デバイスからクラウド、クラウドからデバイスに通信するとき、証明書の相互認証用のIDにより認証を行います。すべてのソフトウェアが署名済みであることを要求して保護する仕組みです。
特徴6. 自動的に更新可能なセキュリティ
IoTデバイスセキュリティが侵害された場合にも、IoTデバイス上のソフトウェアをより安全な状態にアップデートする機能があれば、セキュアな状態を維持できます。特に既知の脆弱性やセキュリティ違反に対しては、自動化することが重要です。
Azure Sphere Security Service は、自動的な更新機能を備えています。人的作業の煩雑さを回避し、迅速な対応が可能になります。
特徴7. エラー報告による問題の早期解決
一般的にIoTデバイスのソフトウェアとハードウェアのエラーは、新たなセキュリティ攻撃によって発生します。しかし、エラー報告を自動的に収集することによって、問題を診断して迅速な修正が可能になります。Azure Sphereでは、オペレーションのデータとエラーを自動的にクラウドの分析システムに報告します。
まとめ
IoTデバイスセキュリティを強化するには、物理的と論理的なサイバー攻撃のハードウェアとしての対策はもちろん、ネットワークと認証、OSおよびカーネル、セキュリティのアプリケーションなど、さまざまな視点から防御を検証する必要があります。
サイバー攻撃を受けたとき被害が拡大しないように、ハードウェアとソフトウェアともにコアとなるシステムから分離させ、多層防御を行うことが重要です。また、デバイスからのエラー報告を自動的にクラウドに収集して更新を行い、可能な限り人的な対応を削減する機能が搭載されていることもポイントになります。
Microsoft Azure Sphere は、これまでMicrosoftがセキュリティ分野に注いできたノウハウをIoTデバイスセキュリティ向けに展開したソリューションです。