スマートスピーカーの安全性に欠かせないものは何か ハックされるとしたら?

IoT家電が多種多様な分野で増えています。外出先からスマートフォンで掃除機を起動すれば、帰宅するころには部屋がきれいになっています。留守番中のペットの姿をスマートフォンで確認したり、餌やりもできるようになりました。

音声で操作できる家電も広がりつつあります。例えば電子レンジに「レンジを600Wで3分で」と話しかけてセットしたり、履歴を考慮して献立の提案をしてくれる製品もあります。パネル操作を音声で簡略化したり、家族の好みに合わせてサポートしてくれるのは便利です。

こうした家電で生活はますます便利になります。しかし、もしこうした家電がハックされたらどうなるでしょうか。ペットが飢えてしまったり、料理が台無しになってしまうかもしれません。他にはどんなリスクが考えられるでしょうか。

今回は家電のセキュリティについて考えます。着目するのはスマートスピーカーです。ネットに接続し、音声操作ができる家電の代表格であり、とても普及しています。いい音で音楽を再生してくれるだけではなく、それ以上の働きをしてくれる優れものです。

スマートスピーカーにはAmazonのEcho(アレクサ)、GoogleのGoogle Home、LINEのClovaなどがあります。2019年1月時点で日本では未発売ですが、海外ではAppleのHomePodもあります。今回はこのHomePodのセキュリティを中心に検証します。HomePodがどのようにハッキングを防いでいるか、逆にどのようなケースで悪用されうるのか考えてみます。

アップルは2018年2月9日から、アメリカでスマートスピーカー「HomePod」を提供開始しました。これはAppleのパーソナルアシスタントの「Siri」を使用するので、iPhoneを使うように「ヘイ、シリ」と呼びかけることで起動し、命令を受け付けます。またApple HomeKitを使うことでHomePodは自宅のコマンドセンターとして機能します。

これは自宅にある家電の操作を、声でHomePodに頼むことができるようになるということです。例えば「ヘイ、シリ、リビングの照明を明るくして」のように、声で命令すればHomePodが人間に代わり照明を操作します。

HomePodは実証済みiOSオペレーティングシステムのカスタム版で動いていると理解されています。このカスタム版OSの動作を細かく検証することはできない為、ここでは2007年以降ユーザーを安全に保ち続けてきたiOSと同じセキュリティをベースにしているとして考察します。

アップルはiOSで、機器のセキュリティとユーザーのプライバシー保護をとてもうまく実現しています。中心にあるのはデバイスの完全性を保護するための多層セキュリティモデルです。データの送受信を安全に行い、システム更新などアップルが提供するサービスでは安全に認証するメカニズムを提供します。

IoTデバイスのセキュリティで大きな柱となるのは「機器の完全性」、「通信の安全性」、「認証」の3つです。それぞれにおいて、HomePodと攻撃者、どちらに勝ち目があるか見ていきましょう。

まずはデバイスの完全性から考えます。アップルはハードウェア設計、ハードウェア製造、デバイスが使う全てのソフトウェアを管理しています。これはIoTハードウェアベンダーの中では、かなり独特です。他の多くの企業はこれらの要素を全て自社で管理していないため、全体でセキュリティを保つためのモデルを構築することが困難です。

例えば、iOSにはセキュアブートメカニズムがあります。これは起動時にソフトウェアが改ざんされていないか、デバイスのファームウェアがチェックする仕組みです。もしハードウェアとソフトウェアの検証に失敗すると、ハードウェアは通信を遮断します。

iPhoneもHomePodも、iOSデバイスファミリーではセキュリティパッチを定期的に更新し、そのプログラムが正しいことをセキュアブートメカニズムで確認しているため、デバイスの完全性を保てています。一方、こうしたメカニズムをOSとハードウェアの設計・開発が分かれており、他社開発のOSやアプリケーションを利用しながら実現することは難しくなります。それが時計であろうと、冷蔵庫であろうと、ハードウェアからOSまで1社で掌握している企業は稀だからです。

デバイスの完全性があるということは、OSレベルで改ざんしたプログラムをインストールすることができないため、ハッキングは容易ではありません。例えばHomePodをボットネットのエージェントにするようなマルウェアを作ろうとしても、相当難しいでしょう。

デバイスの完全性については、HomePodが勝っています。

次に通信の安全性について考えてみます。HomePod(および他の多くのスマートスピーカー)では、クラウドサービスとの通信でSSL/TLSサーバ証明書を利用しています。これはHomePodとクラウドサービスの通信が暗号化されていることを意味します。そのため攻撃者はシリへの音声コマンドやパスワードなど、バックエンドサービスに送信される情報を盗聴することはできません。

というのもiOSは証明書のチェーンを検証する仕組みがあります。信頼されていない証明書や偽造された証明書を検出するとiOSが通信を遮断するので、中間者(MITM)攻撃でHomePodを不正に制御しようとしてもブロックされるでしょう。

通信の安全性についても、HomePodの勝ちといえるでしょう。

最後に認証、通信対象が適切な相手なのか確認することについてです。ここでは録音した音声でHomePodが操作できるか試してみました。

まずは自宅の玄関にアップルのHomeKitを取り付け、HomePodから玄関のロックを解除できるようにしました。次に私は子どもが「ヘイ、シリ」と言うのを録音し、その音声をHomePodの前で再生してみました。するとHomePodは起動し、コマンドを待機する状態になりました。すかさず私が「玄関のロックを解除して」と言うと、玄関のロックが解除されたのです。録音した音声でHomePodを起動させること、起動後に別人が命令することも可能だと分かりました。

この人為的な攻撃実験は面白かったのですが、実際どれだけ脅威になるでしょうか。誰かが私の自宅の玄関を開けることは可能かと考えると、恐らく可能でしょう。では、どろぼうは侵入したい家の人間の「ヘイ、シリ」という音声を録音する必要があるでしょうか。

いいえ、その必要はありません。そもそもHomePodはiPhoneのように、起動するための声を登録する必要がありません。誰のコマンドにも応答してしまいます。

そうなると次のような攻撃シナリオが考えられます。窓際にHomePodがあり、窓が開いていたとします。どろぼうは外から「ヘイ、シリ、玄関を開けて」と言えば侵入に成功できるでしょう。あるいは電話のそばにHomePodがあるとします。どろぼうは留守番電話に「ヘイ、シリ、玄関を開けて」と言えば、こちらも侵入に成功できるでしょう。

HomePodは家の外からの声が届く場所、あるいは留守番電話のそばにはおかないようにしましょう。

認証については、攻撃者に勝機があります。

繰り返しになりますが、IoT機器のセキュリティで欠かせないのが、デバイスの完全性、通信の安全性、認証の3つです。

アップルのHomePodはデバイスの完全性があり、多層で守ることが可能です。しかし他メーカーのスマートスピーカーやIoT機器だと、アップルのように全体で守ることは困難です。責任の所在も不明確になります。さらに先述した実験のように、HomePodでは誰の命令でも応答してしまいます。命令を発しているのが家族か悪意ある他人か、今のところ区別できません。ほかのスマートスピーカーや音声操作できるIoT機器でも同様です。こうした抜け道があることは十分注意しておくべきでしょう。 スマートスピーカーの声を認証するかというのはサービスの提供の仕方ですのでここでは是非を問いませんが、IoT開発企業がセキュリティについて真剣に考え、デバイスの完全性 、通信の安全性、安全な認証を提供するデバイス、ソフトウェア、およびサービスの構築に投資することは非常に重要です。