Osegi
Matériel·2 min de lecture

Xiaomi Mi Smart Speaker : root et SSH via la fenêtre USB du bootloader

Un bidouilleur a obtenu le root et un SSH persistant sur l'enceinte Xiaomi Mi Smart Speaker avec Marusya, grâce à la fenêtre USB du bootloader et à une copie complète de la NAND.

Xiaomi Mi Smart Speaker with its board exposed and thin wires soldered to USB test pads, connected to a laptop.
Image: Хабр

Une enceinte Xiaomi Mi Smart Speaker avec l'assistante russe Marusya, reçue en 2021 en cadeau avec un téléphone, sert désormais de petit ordinateur Linux sur lequel on peut se connecter. Son propriétaire a obtenu le root et un serveur SSH qui survit à un redémarrage normal, et a publié l'outil qu'il a écrit : SpeakerLab 1.0.

L'astuce tient au démarrage. Le Secure Boot est activé sur la carte, mais le chargeur d'origine permet encore de manipuler la mémoire vive une fois l'image de démarrage de l'enceinte validée. SpeakerLab exploite ce créneau. Le noyau et le device tree restent ceux d'origine ; seul l'initramfs (un petit système de fichiers de démarrage) est remplacé par une version temporaire contenant un installateur et la clé SSH publique du propriétaire. Aucune signature n'est falsifiée et les clés OTP/eFuse ne sont pas touchées.

Quelle enceinte Xiaomi Mi Smart Speaker est concernée ?

Une seule. L'auteur a travaillé sur la carte AS09A VER0201 avec Marusya : SoC Amlogic A113X, 512 Mio de DDR3, mémoire NAND Kioxia/Toshiba, firmware 32.23.1, U-Boot 2015.01 et Linux 4.9.113. L'outil compare le SHA256 du code du bootloader à un profil et s'arrête en cas de différence. La version mondiale avec Google Assistant partage des origines matérielles, mais sa table de partitions et son logiciel diffèrent : elle n'est pas prise en charge.

Comment ça marche

À froid, le bootloader apparaît brièvement en USB sous l'identifiant 1b8e:c003. L'outil l'attend : on lance l'opération, on voit « Attente USB », puis on coupe complètement l'alimentation avant de la rétablir. Un redémarrage logiciel n'ouvrait pas cette fenêtre sur l'exemplaire de l'auteur. La liaison passe par des plots USB soudés sur la carte, la ligne 5 V restant isolée et non connectée. Il recommande de vérifier les inscriptions et les couleurs de câble sur sa propre carte.

Avant tout, l'outil réalise une copie physique complète de la NAND, avec la zone OOB et les blocs défectueux : 131 072 pages, 272 Mio par lecture. Les données arrivent par morceaux sur le PC et la couverture des pages est contrôlée, pas seulement l'empreinte du fichier. Un hash correct ne prouve pas une lecture sans erreur, précise l'auteur, qui a constaté quelques écarts. Cette copie contient réglages réseau, clés et identifiants : il ne publie pas la sienne.

L'installateur monte la partition système en lecture seule et /data existant en UBIFS, sans formatage ni écriture des partitions de démarrage. Les fichiers SSH vivent dans /data/speakerlab, ce qui reste une modification permanente de la NAND. L'auteur décrit aussi comment bloquer les mises à jour OTA.

Des apps à découvrir

SUMO : le puzzle de nombres

Touche les bonnes cases, additionne, atteins l'objectif. Facile à apprendre, difficile à maîtriser. Gratuit, pour tous les âges.

Mots-clés:xiaomimi smart speakermaruskarootsshspeakerlab

Plus d'actus de ce jour

Tout voir →

Plus dans: Matériel

Tout voir →