脆弱なIoTシステムの設置にはご用心、「Black Hat USA 2021」講演レポート【後編】
「カプセルホテルのIoTをハッキング」…その後の対策は? 現地調査してみた
2022年04月01日 08時00分更新
Wi-Fiコントローラー裏にWEPキーのシール
CS7800をクライアントモードに切り替え、接続先のWi-Fiアクセスポイントを「WPA2のみ」に設定して使えば、WPAの問題は解消される(最新のWPA3にするにこしたことはないが、ここでは割愛)。ただし、ここまですべて筆者の憶測でしかないので確証が得られない。
しっかり調査を行いたいと考えた筆者は、同ホテルに宿泊して検証を行うことにした。セキュリティ専門家の視点を借りるべく、CTF(セキュリティコンテスト)のチームメンバーで、日本ハッカー協会の代表理事、杉浦隆幸氏にサポートを依頼。同氏と協議のうえで、パケットキャプチャやチェックすべきポイントなど合法的に実行できる範囲で調査内容を整理し、同ホテルへと向かった。
チェックイン後に案内されたカプセルホテルの部屋はとても快適だった。ベッドに横になった瞬間、寝不足の筆者は意識を持って行かれそうになったが、何とか体制を立て直して、隣室でノートPCを広げる杉浦氏と検証をスタートする。
カプセル内の照明や空調を制御するCS8700コントローラーは現役で稼働しており、一般客でもアクセスできる場所に設置されていた。ホテル内でのWi-Fiスキャンやパケットキャプチャの結果を総合して、CS8700は予想通りクライアントモードで動作しているとの確証を得た。
余談だが、キャスパー氏は講演の中で「CS8700に設定されたWEPキーは、型番らしき共通文字列+4桁の文字列の組み合わせだった」と述べ、末尾4桁の組合せは6万5536通りしかないので簡単に破れると指摘していた。現地でコントローラーを観察したところ型番の下に4桁の文字列がシールで貼られており、キャスパー氏の講演画面と照合した結果、これがそのままWEPキーとして使われていたと確定した。いたずらしたい部屋のコントローラーを目視すれば、WEPキーがほぼ特定できる状態だったわけだ。
なぜこのように推測しやすいWEPキーにしてしまったのだろう。ランダムに生成した文字列を使い、iPod touchのキッティング時に自動展開すれば、ある程度の安全性は苦労なく確保できたのではないか。キャスパー氏も疑問に感じてホテル側に確認したそうだが、回答は「Nasnos側で標準設定されているものをそのまま使用している」だったという。やはり標準設定のWEPキーは、コントローラー裏にシールで貼付されたもので間違いなさそうだ。
この点について杉浦氏にコメントを求めたところ、「それなりの文字数かつアルファベットと数字の組み合わせとなれば、入力ミスも起こりやすい。そうした入力ミスやそれに伴うサポートコストを考えた結果、シールで貼ってしまう解決策をとったのだろう」との分析だった。
前述したとおり、同ホテルのCS8700コントローラーはすでにクライアントモードに切り替えて使われており、この脆弱性はもう存在しない。しかしCS8700に限らず、デフォルト設定のパスワードをそのまま使っているアクセスポイントやIoT機器は世の中に多いのではないだろうか。導入後は必ず新しいパスワードを設定する、パスワードが書かれたシールなどははがす、第三者が容易にアクセスできない場所に隠すなど、セキュリティ強化は忘れないようにしていただきたい。
「Apple IDが未設定」という新たな問題を発見
続いて、フロントで渡された室内制御用のiPod touchも調べてみた。キャスパー氏が講演で話していたとおり、この端末はホテル専用アプリだけが操作できるように、iOSの標準機能「アクセスガイド」でパスコードロックがかかっていた。そして、バッテリーが消耗して電源が切れたのち、充電してから再起動するとロックが解除されることも確認した。
ここで気になったのは、このiPod touchにApple IDが設定されていなかったことだ。宿泊者がApple IDを勝手に設定し、持ち込んだMacbookと連携して管理下に置いてしまえば、CS7800コントローラーがクライアントとして接続しているWi-Fiネットワーク(隠れたSSIDのネットワーク)のパスワードを確認できてしまう。特別なテクニックもいらない、誰もが実行できる“乗っ取り”方法が放置されていたわけだ。このネットワークに接続して、接続されているすべてのデバイスの情報を収集したり、場合によっては見過ごされた脆弱性を探し出したりすることもできるかもしれない。
もうひとつ気づいたことがある。宿泊者用のWi-Fiから、Wi-FiルーターのWeb管理画面が見えてしまっていることだ。そういう仕様のルーターなのかもしれないが、認証なしで近隣のSSIDやBSSID、チャネル、暗号化方式などの一覧が閲覧できてしまった。さすがに設定変更画面には認証がかかっていたが、構成情報が丸見えなのはあまりよろしくない。オフにできるならばオフにするのが無難だろう。