ガレージドアリモコンもハッキングされてしまう

沿って : Ilikephone / On : 26/06/2022

 ガレージドアを遠隔でコントロールして自宅が安全であると確認したり、ガレージに直接荷物を配送してもらうというアイデアは、多くの人々にとって魅力的です。多くのIoTデバイスが提供するこのような利便性のため、消費者は潜在的なセキュリティー問題を考えることをやめてしまいます。

 マカフィーATRはこのほど、「ユニバーサル」なガレージドア自動開閉プラットフォームChamberlain(チェンバレン)のMyQ Hubを調査しました。 Chamberlainは、車中にあるスイッチと同様に、新しいガレージドア開閉装置として機能するハブを経由することで、このデバイスをユニバーサルにしました。こうしてMyQ Hubはさまざまなガレージドアを改良して連動できるようになります。

 通常ならIoTデバイスとしては一般的ではないこのデバイスの保護に関して、Chamberlainはかなり良い仕事をしていることがわかりました。ところが、私たちはMyQ Hubが無線周波数を介してリモートセンサーと通信する方法に欠陥があることを見付けました。

 攻撃の観点から見て、私たちが調査を始めた攻撃経路は3つあります。ローカルネットワーク、リモートアクセス(API、またはサードパーティー統合)、センサーとハブ間のRF通信です。最初に試みたのは、ローカルネットワーク経由でデバイスにアクセスすることでした。クイックポートスキャンにより、そのデバイスがポート80でリッスンしていることが明らかになりました。ポート80でデバイスに移動しようとすると、start.htmlにリダイレクトされ、404エラーが返されます。デバイスで開かれているポートは他にありません。

Chamberlain MyQハブの内部

 ハブを分解すると、Wi-Fiおよびウェブ通信をハンドリングする小さなSOC(system on a chip)モジュールと、ガレージドアとリモートドアセンサーの両方のRF側をコントロールするセカンダリPICマイクロコントローラーが出てきました。 FCCのウェブサイトに記載されているMyQハブには、私たちが購入した2つのMyQハブにはないBluetoothモジュールも含まれていました。

 UART接続は切断されたか、有効になりませんでしたが、JTAG接続はメインのWi-Fiモジュールと直接通信するために作動していました。JTAG接続により、フラッシュチップの内容全体をダンプし、システムを無制限にデバッグすることができました。メインのWi-Fiモジュールは、通常のLinuxシステムとは大きく異なる動作をするRTOS(Real Time Operating System)を実行しているMarvellマイクロコントローラーでした。事前定義されたアプリケーションを引き続き実行しますが、RTOSには通常、従来のシステムが持っていたようなファイルシステムはありません。 Marvellマイクロプロセッサのコンテンツ全体を抽出して、アセンブリの分析とウェブサーバーの動作を決定することができました。

 ウェブサーバーコードを調べることで、ローカルAPIを介してデバイスがどのようにセットアップされているかを識別し、有用ではないものの興味深い送信可能なコマンドを見つけることができました。

ローカルAPIコマンド

 アクセス可能であることがわかったURLと追加のAPIパスがいくつかありましたが、攻撃を開始するのに適した場所として目立ったものはありませんでした。この時点で、他の攻撃の経路を調査することにしました。

 私たちはサードパーティーの攻撃の経路とリモートAPIを調査するのにあまり時間をかけませんでした。調査においてこれは、いわば曖昧な領域になるからです。 /sys/mode API呼び出しでテストしている間、デバイスをソフトの工場出荷状態にできました。これで別のアカウントへのデバイスの追加を試みることができます。モバイルアプリケーションでSSLトラフィックをキャプチャすると、シリアル番号が既に別のアカウントに登録されていたために失敗していたことに気づくことができました。SSLのピン解除と呼ばれる技術を使用して、Androidアプリケーションからのトラフィックを解読しました。このプロセスをより詳細に説明するため、また新たにブログを投稿します。私たちが試してみたかったのは、別のシリアル番号を送信するためにAndroidアプリを変更することでした。デバイスが元のガレージドア情報を消去したとは考えられないため、新しいアカウントからデバイスを開くことができたかもしれません。ただし、これはすべて推測であり、リモートAPIにアクセスしたくないためテストはしていません。

 最後に調査した経路はRFでした。私たちはリモートドアセンサーとハブの間の周波数変調について解析に着手しました。当初は、データがデジタルで送信されるFSK(frequency shift keying)のようなものだと考えていました。信号がひとつの周波数にある場合、対応するビットは0で、信号が別の周波数に表示される場合、ビットは1です。MyQリモートセンサーは2つだけではなく3つの異なる周波数を使用していたため、この考えは放棄しました。

 ドアセンサーのFCCファイリングを見ると、特に有効な修正に気づきました。

 OOKは「On Off Keying」の略で、デジタルビットをRFにエンコードするもう1つの方法です。OOKはシグナルを送信する(1)か、シグナルを送信しない(0)かのいずれかです。これは、送信機と受信機の両方を同期する必要があることを意味します。

オンオフキーイングのグラフィカル表現

 これはMyQリモートドアセンサーからキャプチャされた信号のバイナリ表現です。こちらは信号全体をしっかりと拡大したウィンドウです。

 ひとつの完全なメッセージがキャプチャされ、それぞれの色は異なる周波数を示す

ガレージドアリモコンもハッキングされてしまう

 3つの周波数すべてからキャプチャされ、16進数に変換された伝送の状態を観察できます。上記に色別で示したように、伝送中のデータパターンを識別するのは簡単ですが、私たちのSDR(Software Defined Radio)から、falseの状態を任意に送信するためにクラックすることはできませんでした。また、ChamberlainのRFエンジニアは、信号を3つの別々の周波数に分離するだけでなく、ローリングコードを実装することによってセキュリティーを心がけていることもわかりました。標準のガレージドアオープナーや車のキーフォブのようなものによって、ローリングコード技術はなじみ深いものかもしれません。ローリングコードデバイスは、攻撃者が信号を直接キャプチャしてリプレイすることを阻止します。これは受信者によって記録された一意の識別子を含む信号によって防止されます。もしも受信者が、一意のIDを持つその信号を再び見つけたらそれを無視します。

 攻撃者がローリングコードデバイスを克服する方法は、「ロールジャム」と呼ばれます。攻撃者は送信機からのローリングコード信号を妨害し、受信機に到達しないようにブロックすると同時に、有効なローリングコードをキャプチャして保存します。このようにして、受信者がこれまでに見たことがない未使用かつ有効なローリングコードを攻撃者は手に入れます。この方法で注意すべきは、被害者は大抵、ガレージのドアまたは車のロックが解除されなかったことに気付くということです。さらに気づかれにくいロールジャムの方法は、常に最新のコードをキャプチャし、最新の信号から1引いたものをリプレイすることです。こうして車やドアは開くようになりますが、依然として攻撃者は自分で使うために最新のコードを所有しています。

 MyQにはこの技術のバリエーションの開発を可能にするローリングコードも実装もされていました。私たちは有効な信号周波数に直接隣接する大量の「ノイズ」を送信することにより、受信機から元のコードを妨害するという概念を取り入れました。このためにMyQ Hubの受信機が過負荷になり、有効な信号が聞こえなくなります。しかしながらSDRの精度により、私たちが送信しているノイズを無視して信号を保存することができました。3つの周波数を同時にリッスンしながら妨害しなくてはならないという事実によって、これはさらに複雑になりました。このFHSS(Frequency Hopping Spread Spectrum)ロールジャム技術に興味があるなら、私たちのホワイトペーパー<こちらのリンク>をお読みください。

 このブログで説明しているChamberlainのガレージドアハブに関連する調査において、唯一の干渉は無認可の最短期無線周波数スペクトルに対するものでした。一方、ガレージドアハブは状態信号を送信しており、通信法またはFCC規則に基づいて認可または許可された通信信号には干渉がありませんでした。

 この技術は機能しましたが、リモートセンサーとMyQハブはRF状況下で常に優位にあるので信頼性が低くなりました。 攻撃の妨害の側面はうまく機能しました。 しかしながら、私たちはガレージの外にいて、リモートセンサーとハブはどちらも同じガレージ内にあり、ガレージドアと壁が障壁として機能するため妨害とリッスンを同時に行うことは困難です。高出力無線機や周波数調整アンテナと、FCC法を無視することで、リモートセンサーの妨害は、私たちのラボ環境で可能なテストよりもはるかに遠くで発生する可能性があります。

リモートセンサー信号(赤)と妨害(黒)のウォーターフォールビュー

 私たちの妨害が確実に機能する状況において、ユーザーがMyQアプリケーションを介してガレージドアを閉める時には、私たちが妨害しているので、リモートセンサーは絶対に閉められたという信号に応答しないことを確認しました。アプリはユーザーに「何か問題が発生しました。もう一度試してください」と警告します。するとガレージドアを直接見ることができない場合、実際には安全に閉まっているにもかかわらず、通常のユーザーならガレージドアが開いていると考えるところです。ユーザーがMyQアプリを信じていれば、アプリケーションが示すように「再試行」します。これがガレージドアのステートレス状態が作用するところです。MyQハブが開閉信号をガレージドアに送信すると、ドアは開きます。なぜならドアは既に閉まっており、ハブは単に状態を変更するからです。これで攻撃者はガレージに直接入ることが可能になります。そして多くの場合、家の中に侵入します。

 ガレージドアが実際に開くと、問題が再び生じたことを被害者に知らせてしまうため、攻撃者はおそらくそのままの状態にしたいとは思わないでしょう。ガレージドアが閉まっている状態にして、アプリがエラーを消去できるようにすると、被害者は安心します。これは、以前にキャプチャされたドアが閉まったという信号からのリプレイか、最も単純な方法では、ガレージドアのVelcroからリモートセンサーを取り外して垂直に設置する、といういずれかのやり方で実行され、ドアがきちんと閉じたことを、ハブに知らせます。

攻撃再現状態フローチャート

 また、実世界のシナリオでは、攻撃者が1日中ガレージの外に座って待つことはまずないと気づいたので、攻撃を自動化することにしました。私たちはGNU Radioを使用して、妨害のJIT(just in time)手段を実装しました。そこではSDRが休止状態のままMyQの3つの個別の周波数をリッスンしています。リモートドアセンサーが送信を開始したことを察知した瞬間、信号の妨害を動的に有効にしてから開始します。

GNU Radio JIT妨害と3つの同時周波数の状態キャプチャ

 そのため、ガレージドア付近の見えない場所に設置する小さなデバイスが作られるようになれば、このタイプの攻撃のユースケースは増大します。私たちのFHSSのホワイトペーパーでこの技術をより詳細に説明しています。RF三角測量を使用したデバイス位置の特定はJIT妨害によって非常に難しくなり、バッテリー動作用のさらに適切な装備も可能になります。

 MyQハブを使用している個人にとって、これはあまり一般的ではないかもしれませんが、ガレージ配送のためのMyQとのサードパーティーパートナーシップに関して先ほど述べたことを思い出してください。また別の起こり得る攻撃は、配達ドライバーがアプリケーションを使用する場合です。ユーザーがこのサービスにサインアップする主な理由は、自宅にいないときでも安全な場所(ガレージ)に荷物を配達してもらえるという考えです。配達ドライバーがガレージ内配達のためにMyQハブを使用している場合、被害者はそこにいなくても、インターネット上のMyQアプリを介してガレージのドアを開閉できます。確固たるハッカーならこの攻撃をやり通すでしょうし、ドアが実際に開いていると被害者が信じる可能性はさらに高いものです。妨害攻撃の詳細な再現手順を含め、調査結果を2019年9月25日にChamberlainにすべて開示しました。サードパーティーの配達ドライバーに関するこの問題について、そしてそれがこの攻撃モデルにどのように当てはまるかについてもChamberlainに伝えました。広範なテストと問題の検証の後、ベンダーはバージョン4.145.1.36946の時点でMyQアプリのアップデートをリリースしました。この更新は、ガレージドアの状態が正確でない可能性があることを示す貴重な警告メッセージをユーザーに提供しますが、ユーザーによるドア自体のリモートコントロールは除外しません。

 IoTデバイスの利点は、対処が必要だとわかった問題を解決することです。その利便性と、これらのデバイスが私たちの生活を自動化し、セキュアにし、または支援する方法を経験すると、もうそれらを手放すことはできません。この簡易さと自動化は、多くの場合、迫りくる潜在的なセキュリティーの脅威を覆い隠します。経時的な手動製品の単純なエンハンスメントにもこの効果があります。たとえば、車の中にあるいまや時代遅れのガレージドアオープナーです。基本的な信号をキャプチャしてリプレイする機能によって、脅威は物理的空間からデジタル空間へ変換されました。ChamberlainのMyQハブは、最終的に以前の製品よりも概してさらにセキュアなガレージへのアクセス方法を作り出しますが、消費者も、WiFi、モバイルアプリ、FHSS RF伝送の使用といった技術プラットフォームのいかなる拡張にも、潜在的な脅威の経路を拡張する可能性があることに注意を向ける必要があります。

 最後に、攻撃の複雑さと設置面積に基づくと、このターゲットに対する実際の攻撃の可能性は低い、とコメントして締めくくりたいと思います。調査結果を検証し、評価に同意しているChamberlainとこのことについて話し合いました。Chamberlainは、セキュアな製品を構築するために明確に努力してきました。そしてIoTデバイスに共通する、簡単に達成できる目標の多くを排除してきたように見えます。このベンダーと協力できることはうれしいことです。彼らは製品の開発における展望として、明確にセキュリティーを優先付けています。

 注釈:このブログで説明しているChamberlainのガレージドアハブに関連する調査において、唯一の干渉は無認可の最短期無線周波数スペクトルに対するものでした。一方、ガレージドアハブは状態信号を送信しており、通信法またはFCC規則に基づいて認可または許可された通信信号には干渉がありませんでした。

※本ページの内容は、2020年1月6日(US時間)更新のMcAfee Blogの抄訳です。原文:We Be Jammin’ – Bypassing Chamberlain myQ Garage Doors著者:Sam Quinn, Steve Povolny and Kevin McGrath

■関連サイト