Le Kindle d’Amazon concerné par 3 failles de sécurité

Trois vulnérabilités dans l’Amazon Kindle auraient permis à un attaquant distant d’exécuter du code et de l’exécuter en tant que root, ouvrant la voie au siphonnage de l’argent des utilisateurs sans qu’ils s’en aperçoivent.

Yogev Bar-On, chercheur chez Realmode Labs, a découvert qu’il était possible d’envoyer des e-books malveillants aux appareils via la fonction «Envoyer au Kindle» pour lancer une chaîne d’attaques, une découverte qui lui a valu 18 000 $ de primes grâce au programe de chasse aux bogues d’Amazon.

“La première vulnérabilité a permis à un attaquant d’envoyer un livre électronique sur l’appareil Kindle de la victime”, a-t-il expliqué dans une publication. «Ensuite, la deuxième vulnérabilité a été utilisée pour exécuter du code arbitraire lors de l’analyse du livre électronique, dans le contexte d’un utilisateur faible. La troisième vulnérabilité permet à l’attaquant d’élever ses privilèges et d’exécuter du code en tant que root. »

amazon kindle

Pour faire fonctionner l’attaque (que le chercheur a nommé KindleDrip), un attaquant doit d’abord connaître l’adresse e-mail attribuée à l’appareil de la victime. Il existe également une liste prédéfinie d’e-mails approuvés à partir desquels les livres électroniques doivent être envoyés. Selon Bar-On, aucune des deux exigences n’est vraiment un obstacle.

L’adresse e-mail de destination spéciale attribuée par Amazon n’est généralement que l’e-mail normal de l’utilisateur sous le domaine kindle.com (par exemple, nom@gmail.com devient nom@kindle.com), qui “peut être forcé brutalement”, a-t-il expliqué.

Et comme pour la liste des adresses approuvées, l’usurpation d’identité peut facilement contourner ce problème. «L’authentification des e-mails n’est toujours pas aussi répandue que vous le pensez», écrit-il. “Étant donné que de nombreux serveurs de messagerie ne prennent toujours pas en charge l’authentification, il n’est pas déraisonnable de supposer qu’Amazon ne vérifiera pas l’authenticité de l’expéditeur.” Et en effet, il a pu usurper un e-mail pour envoyer un livre électronique sur son propre appareil.

L’attaque KindleDrip

Une fois le problème d’e-mails résolu, la première étape d’une attaque KindleDrip consiste à envoyer un livre électronique malveillant à une cible. Le fichier est envoyé sous forme de pièce jointe et s’affiche automatiquement dans la bibliothèque d’un utilisateur. Cependant, la victime ne reçoit pas d’alerte indiquant que quelque chose de nouveau a été installé dans la bibliothèque.

«Pour aggraver les choses, rien n’indique que le livre électronique a été reçu à partir d’un message électronique», a déclaré Bar-On. “Il est également apparu sur la page d’accueil du Kindle avec une image de couverture de notre choix, ce qui facilite grandement les attaques d’hameçonnage.”

Ensuite, la victime entre dans le livre d’apparence innocente et touche l’un des liens de la table des matières. Le lien ouvre le navigateur intégré avec une page HTML contenant une image JPEG XR malveillante.

L’image est analysée et le code malveillant s’exécute désormais en tant que root. La charge utile modifie l’arrière-plan de démarrage et redémarre le périphérique. Ensuite, l’attaquant reçoit les informations d’identification privées de l’appareil et peut se connecter au compte de la victime.

Détails techniques des failles du Kindle d’Amazon

Pour piéger le livre électronique avec un code malveillant, le chercheur a découvert que le navigateur Web du Kindle prend en charge l’utilisation d’un format d’image obscur appelé JPEG XR. De manière pratique, le Kindle lui-même dispose d’une bibliothèque de micrologiciels appelée libjpegXR.so, qui analyse JPEG XR.

Il a constaté qu’il était possible de déclencher un dépassement de mémoire tampon lors de l’analyse de JPEG XR avec le Kindle, avec des octets contrôlés à partir d’un fichier image JPEG XR.

Immédiatement après le débordement du tampon, il y a une structure de pointeur jxr_tile_qp *tile_quant. Bar-On a constaté qu’en utilisant le débordement, le pointeur pouvait être remplacé pour pouvoir écrire des données sur une adresse contrôlée par un attaquant – ce que l’on appelle une primitive d’écriture absolue.

«En utilisant la primitive d’écriture absolue, un shellcode pourrait être écrit dans la section exécutable», a-t-il expliqué. «Ensuite, la primitive pourrait être utilisée à nouveau pour «vaporiser» la table de décalage global (GOT) avec l’adresse du shellcode. Le processus mesquite est multi-thread, donc l’un des autres threads appellerait inévitablement une fonction depuis le GOT, provoquant l’exécution du shellcode. »

Une fois le code exécuté, la troisième étape de l’attaque est l’augmentation des privilèges.

«Le processus mesquite est exécuté sous chroot avec un utilisateur faible appelé framework», écrit-il. “La vulnérabilité précédente ne pouvait donc même pas être utilisée pour redémarrer l’appareil. Une élévation de privilèges était nécessaire. »

En recherchant des processus racine qui écoutent sur un socket local, il a découvert quelque chose appelé stackdumpd.

«Ce processus est chargé de générer des sauvegardes de pile des processus qui ont crashé», a-t-il déclaré. «Il reçoit des informations telles que l’ID de processus et l’ID de thread crashé, et les transmet à /usr/bin/dump-stack. Il s’agit d’un script shell qui se connecte au processus en panne avec GDB… et comme son nom l’indique, sauvegarde la pile. »

GDB est un débogueur distant. Le chercheur a découvert qu’il pouvait exécuter des commandes arbitraires données dans l’argument de commande, et pouvait donc être utilisé pour exécuter du code arbitraire en tant que root. Il y a deux contrôles de sécurité avant que cela ne soit possible et ils peuvent être contourné avec une «chaîne de caractère simple», a-t-il expliqué. «Ainsi, nous avions une vulnérabilité qui nous permettait d’exécuter du code arbitraire dans le contexte de l’utilisateur root.»

Les trois problèmes associés ensemble permettent des exécutions de code à distance de niveau root sur un Kindle vulnérable, comme le montre la vidéo de preuve de concept:

Armé de cette attaque, un pirate informatique peut espionner les sessions Web des utilisateurs, voler les informations d’identification ou, plus inquiétant, voler de l’argent à la victime. Pour dérober de l’argent, l’attaquant pouvait publier un livre électronique, puis se connecter au compte de la victime et utiliser les informations de carte de crédit associer au compte pour acheter le livre électronique.

L’attaque fonctionne sur les Kindle avec la version de firmware 5.13.2 ou inférieure. Amazon a patché KindleDrip dans la dernière mise à jour, la version 5.13.4 du micrologiciel.

«En utilisant trois vulnérabilités différentes, j’ai réussi à exécuter du code arbitraire en tant qu’utilisateur root sur le Kindle d’Amazon, en ayant uniquement de l’adresse e-mail attribuée à l’appareil», a déclaré Bar-On. «Cela aurait pu permettre à un attaquant d’accéder aux informations d’identification de l’appareil et de faire des achats sur la boutique Kindle. Cela aurait également pu être utilisé pour jailbreaker les derniers appareils Kindle. Amazon a pris le rapport au sérieux et a résolu les problèmes dans un délai raisonnable. »

Si cet article vous a plu, jetez un œil à notre article précédent.

S’abonner
Notifier de
guest
0 Commentaires
Annotations
Voir tout les commentaires