Xiaomi Mi Smart Speakerでroot取得、再起動後も残るSSH
Marusya搭載のXiaomi Mi Smart Speakerで、ブートローダーのUSB窓を使いroot権限と再起動後も残るSSHを実現。NAND全体のバックアップも取った。

2021年にスマートフォンの販促で手に入れたXiaomi Mi Smart Speakerを、自分だけのLinux機にしたい。そう考えたロシアの開発者が、Xiaomi Mi Smart Speakerのroot権限と、通常の再起動後も残るSSHの導入に成功した。GUI、コマンドライン、ソースコード、テストを備えたツール「SpeakerLab 1.0」も公開している。
Xiaomi Mi Smart Speakerでrootを取る仕組み
対象の基板ではSecure Bootが有効だ。ただし標準のブートローダーは、bootイメージの検証に成功したあとRAM上のデータを書き換えられる。この隙間で一時的なインストーラーを動かす。純正のカーネルとDTBはそのままで、initramfsだけを所有者の公開SSH鍵入りのものに差し替える。署名の偽造やOTP/eFuse鍵の変更は行わない。
SSH関連のファイルは/data/speakerlab に置かれ、既存のwritable overlayから起動する。ブートローダーとカーネルは書き換えない。ただし/dataへの書き込みはNAND上の恒久的な変更なので、メモリが一切変わらないとは言えない。
対応するスピーカーと接続方法
確認されたのはMarusya版のAS09A VER0201基板のみ。SoCはAmlogic A113X、RAMは512MiB、ファームウェアは32.23.1、U-Boot 2015.01、Linux 4.9.113(Buildroot)だ。Google Assistant搭載のグローバル版は、パーティション構成やシステムが異なるため対象外となる。
コールド起動の直後、ブートローダーは短時間だけUSBで見え、PCには1b8e:c003として認識される。ツールが待機した状態で電源を完全に切って入れ直す必要があり、ソフトウェアの再起動ではこの窓が開かなかった。接続は基板上のUSBパッド(GND、D+、D-)を使い、VBUSは接続しない。
先にフルバックアップを取る理由
ツールはOOB領域と不良ブロックを含め、全131,072ページを物理読み出しする。1回で272MiBだ。ダンプにはネットワーク設定や鍵などの個人情報が入るため、公開アーカイブに作者のダンプは含まれない。またBL33のSHA256がprofile.jsonと一致しなければ処理を止める。
注目のアプリ
正しいマスを選んで足し算、目標の数に。覚えるのは簡単、極めるのは難しい。無料、全年齢向け。
AIの会話パートナーと話すだけ。一文ごとに添削され、あなたの言語で解説が返ってきます。9言語、A1からC2まで。
EDIFACTやX12メッセージを開き、各セグメントの意味を表示。JSON/XML変換、PDF・Excel出力。ローカルで動作、アップロード不要。
相手、シーン、性格を選ぶだけ。検索エンジンが地元ショップの商品説明を読み、合うものを並べます。無料、登録不要。
同じ日のニュース
すべて見る →関連カテゴリ: ハードウェア
すべて見る →
Seagate FireCuda Forge、20TB HDDにSSDは付属せず

AIスマートグラスが健康管理へ、心拍や目の疲れも測定

Huawei MED、SSDと磁気テープを一体化した新型ストレージ




