Unitree社のヒューマノイドロボット「G1」に新たに公表された脆弱性により、近くにいる攻撃者がBluetooth Low Energy(BLE)経由で未認証のままroot権限のリモートコード実行(RCE)を獲得できることが判明しました。
この調査は「UniBLEed」と名付けられ、ロボットの「Locomotion PC」を標的としています。これはモーターやカメラ、音声、音声認識といった安全性に関わる重要機能を制御するLinuxベースのシステムです。
このBluetooth攻撃チェーンはCVE-2026-76640として追跡されており、GATT特性0xFFE2から始まります。このインターフェースは基本的なWRITE権限のみで書き込みを受け付けていたため、電波が届く範囲にいるデバイスであれば、BLEのペアリングや認証を経ずにロボットと通信できてしまいます。
続いて、平文のブートストラップ要求を送信すると、ロボット固有のAES-128鍵がRSA暗号化されたレスポンス内に含まれて返されます。
本来であればRSAによる暗号化がこの秘密鍵の復元を防ぐはずですが、Boschko氏の調査によると、UnitreeのAPIエンドポイント/device/bindExtDataはクラウドAPI側でこの暗号を復号してしまい、認証済みのUnitreeアカウントであれば誰でも平文のAES鍵を取得できる状態にありました。
さらに重大な点として、このエンドポイントは提出されたシリアル番号がそのアカウントに紐づくものかどうかを検証していなかったと報告されています。そのため、標的の近くにいる攻撃者は、ロボットのBLEバージョン3のプロビジョニングおよびWi-Fi設定に関連する秘密情報を取得できてしまいます。
この鍵を手に入れた研究者は、保護されたBLE機能にアクセスし、121バイトの事前共有鍵を送信することで、wpa_connect.sh内の安全性の低いWi-Fiフォールバック処理を発動させました。
攻撃者が制御するコンテンツはクォートされていないヒアドキュメントに入力され、生成されるwpa_supplicantの設定を改ざんし、不正なホットスポットへの接続を可能にしました。最終段階では、root権限で稼働するBluetoothデーモンbtgatt-serverが悪用されました。
Boschko氏は500バイトのwifi_ssidバッファに1,050バイトの値を書き込み、このオーバーフローとアドレス空間配置のランダム化(ASLR)を弱める情報漏えいを組み合わせました。
このエクスプロイトはイベントループのクリーンアップ状態を変更し、system()関数が攻撃者の選んだコマンドをroot権限で実行するようにしました。このサービス自体はその後クラッシュしたものの、レポートによればバックグラウンドのシェルは動作し続けたとのことです。
CVE-2026-76639は、AIサービスchat_goとbashrunnerに関わる、これとは別のroot権限RCE経路について説明しています。ナレッジベースのアップロード処理におけるパストラバーサルの脆弱性により、ファイルをbashrunnerのホワイトリストディレクトリに配置することが可能でした。
このサービスはインポート時にホワイトリストを構築し、ファイル拡張子を無視するシェル実行ルールを使用しているため、悪意のあるファイルがroot権限で実行される恐れがありました。またこの不具合は、BLEチェーンにおけるアドレス情報の漏えいにも一役買っていました。
Unitreeは協調的な情報開示プロセスの中で両方の攻撃チェーンを検証し、平文の鍵を返す前にアカウントがロボットの所有者と一致するかどうかを確認するよう、鍵取得のフローを更新したと報告されています。
Boschko氏によれば、今回の修正で報告された脆弱性の大半、あるいはすべてに対処できたとのことですが、同氏はこの分析結果があくまで検証済みのビルドを反映したものであり、必ずしも最新のG1ソフトウェアを対象としたものではない点を強調しています。この問題は4台のG1ロボットで再現され、研究者は合計5,000ドルのバグバウンティを獲得しました。
運用者は、Unitreeが提供するアップデートを適用し、物理的な距離やBluetoothの通信範囲への接近を制限し、クラウドアカウントへのアクセスを監査するとともに、未パッチのロボットは認証情報を漏えいさせたり、重要機能を制御されたりする可能性があることを前提に対応する必要があります。
今回の調査結果は、電波によるプロビジョニング、クラウド認証、そして安全性に関わる重要なサービスを、設計段階から厳密に分離しておくことがいかに重要かを改めて浮き彫りにしています。
セキュリティチームに、不審な活動をより迅速に調査し、ビジネスへの影響が拡大する前に脅威を封じ込めるための可視性とコンテキストを与えましょう。ANY.RUNで調査を強化する
翻訳元: https://cyberpress.org/unitree-g1-humanoid-robot-flaws/