Boulanger brade à moins de 50 € cette caméra de surveillance avec double objectif qui filme en 2K

Tous nos articles sont aussi sur notre profil Google : suivez-nous pour ne rien manquer !

Tous nos articles sont aussi sur notre profil Google : suivez-nous pour ne rien manquer !
L’histoire du jour est signée Luke M, un hacker qui a découvert comment rooter une caméra avec… du son !
L’appareil en question est une caméra chinoise de la marque Yi qui utilise une fonctionnalité appelée “Sonic Pairing” pour faciliter la configuration WiFi. Comme ça, au lieu de galérer à taper votre mot de passe WiFi sur une interface minuscule avec vos gros doigts boudinés, vous jouez simplement un petit son depuis votre téléphone et c’est ce son qui contient votre clé WiFi encodés en modulation de fréquence. La caméra écoute, décode, et se connecte.
Magique, non ?
Sauf que cette fonctionnalité marquée en “beta” dans l’app Yi IoT contient deux bugs magnifiques : une stack overflow local et un global overflow. En gros, en fabriquant un fichier audio malveillant avec les bons patterns, Luke a pu injecter du code arbitraire dans la caméra, ce qui lui permet d’obtenir un shell root qui se lance via la commande telnetd avec les identifiants par défaut. Tout ça, sans accès physique… juste la lecture d’un wav ou d’un MP3.
Pour arriver à ses fins, Luke a utilisé Frida , un framework de hooking que j’adore, capable d’intercepter les fonctions natives de l’app. Cela lui a permis de remplacer les données légitimes attendues par l’app par son propre payload.
Le premier bug (stack overflow) n’étant pas suffisant seul, Luke a dû utiliser un autre bug (
un out-of-bounds read via DOOM
) pour leaker un pointeur et contourner l’
ASLR
. Mais le second bug (global overflow) est bien plus intéressant puisqu’il lui permet directement de faire une injection de commande via system() lors du pairing, sans avoir besoin d’autre chose.
Voici la waveform utilisée par le second exploit
Et comme la chaîne que vous pouvez envoyer via le son peut faire jusqu’à 128 bytes c’est largement suffisant pour un telnetd ou n’importe quelle commande shell. Notez que pour que l’exploit marche, le bind_key doit commencer par ‘CN’, ce qui force un path exploitable et, en bonus fait causer la caméra en chinois ^^.
Après faut savoir que ce hack amusant ne fonctionne que si la caméra n’est pas encore connectée au cloud. Donc c’est pas très utile pour attaquer des caméras déjà déployées mais ça illustre bien le problème de tout cet IoT pas cher avec des tas de features “pratiques” comme ce “Sonic Pairing” qui finissent par être catastrophique dans la pratique.
Voilà… si vous voulez les détails techniques complets avec les waveforms et le code d’exploit, foncez lire ça sur Paged Out! #7 .


Téléchargez notre application Android et iOS ! Vous pourrez y lire nos articles, dossiers, et regarder nos dernières vidéos YouTube.

Tous nos bons plans directement sur WhatsApp. Rejoignez Frandroid Bons Plans, zéro spam garanti.

Les bons plans n’attendent pas : abonnez-vous à notre canal WhatsApp Frandroid Bons Plans ! (zéro spam, promis).

Abonnez-vous à Frandroid sur Google pour ne manquer aucun article !