Un bug du logiciel Apple Home pourrait vous empêcher d’accéder à votre iPhone
Une recherche en sécurité appelée Trevor Spiniolas vient de publier des informations sur un bogue qui, selon lui, existe dans le système d’exploitation iOS d’Apple depuis au moins la version 14.7.
Le bogue affecte le Accueil app, le logiciel de domotique d’Apple qui vous permet de contrôler les appareils domestiques – webcams, sonnettes, thermostats, ampoules, etc. – qui prennent en charge Apple HomeKit écosystème.
Spiniolas a surnommé le bogue verrou, lui donnant à la fois un logo et une page Web dédiée, affirmant que bien qu’il l’ait divulgué à Apple en août 2021, les tentatives de l’entreprise pour le corriger jusqu’à présent ont été incomplètes, et sa date limite spécifiée du 1er janvier 2022 pour « la mise en ligne » avec les détails de la faille est maintenant passé:
Je pense que ce bogue est traité de manière inappropriée car il présente un risque sérieux pour les utilisateurs et de nombreux mois se sont écoulés sans un correctif complet. Le public devrait être conscient de cette vulnérabilité et savoir comment l’empêcher d’être exploitée, plutôt que d’être tenu dans l’ignorance.
Vous devrez décider par vous-même si ce bogue est vraiment « présente un risque sérieux », mais dans cet article, nous vous expliquerons quand même comment résoudre le problème.
La bonne nouvelle est que le bogue ne permet pas aux attaquants d’espionner votre téléphone (ou vos appareils HomeKit), de voler des données telles que des mots de passe ou des messages personnels, d’installer des logiciels malveillants, d’accumuler des frais en ligne frauduleux ou de perturber votre réseau.
En outre, il existe des moyens simples d’éviter d’être piqué par ce bogue en attendant qu’Apple propose un correctif complet.
La mauvaise nouvelle est que si un attaquant vous pousse à déclencher le bogue, vous pourriez vous retrouver avec un téléphone qui ne répond tellement pas que vous devez réinitialiser le micrologiciel pour revenir dans l’appareil.
Et, comme vous le saviez probablement déjà – ou, si vous ne le saviez pas, vous le savez maintenant ! – en utilisant Device Recovery ou DFU (un mise à jour directe du firmware, où vous réinitialisez complètement le firmware d’un iDevice récalcitrant via un câble USB) efface automatiquement toutes vos données personnelles en premier.
Effacer vos données lors de la réinitialisation de l’appareil est une fonctionnalité, pas un bogue : cela empêche les voleurs de saisir simplement votre téléphone, d’effectuer une réinitialisation matérielle et une DFU, puis de lire les anciennes données de l’appareil qu’ils viennent de récupérer. ‘. L’effacement de vos données est rapide et fiable car les appareils mobiles Apple cryptent toujours vos données, même si vous ne définissez pas votre propre code de verrouillage, en utilisant une phrase de passe choisie au hasard et conservée dans un stockage sécurisé. Effacer uniquement cette phrase secrète de l’appareil est donc suffisant pour rendre toutes vos données inutiles en une seule fois, sans avoir à attendre un écrasement de tout le stockage flash de l’appareil, et sans l’incertitude de savoir si des données non chiffrées ont été laissées pour compte.
Quels appareils sont concernés ?
Spiniolas ne le dit pas, mais nous supposons que ce même bogue est présent dans iPadOS, qui est livré séparément d’iOS depuis la version 13, mais toujours avec un numéro de version correspondant.
Nous ne savons pas non plus jusqu’où remonte ce bogue : comme mentionné ci-dessus, Spiniolas dit « depuis iOS 14.7 », ce qui, selon nous, est la première version qu’il a pu tester.
Apple n’autorise pas la rétrogradation des iPhones et des iPads, afin d’empêcher les jailbreakers potentiels de revenir à des versions iOS boguées connues afin de réintroduire délibérément des failles de sécurité exploitables.
Qu’est-ce qui cause le bogue ?
Selon la description donnée par Spiniolas, le bogue est déclenché si l’application Home d’Apple rencontre un appareil HomeKit sous sa responsabilité avec un nom extrêmement long, par exemple 90 000 caractères ou plus.
Cela donne à ce bogue un son à l’ancienne débordement de tampon, où plus de données sont enregistrées dans la mémoire que ce qui était initialement alloué comme scénario « pire des cas », provoquant au mieux le plantage du programme incriminé et, au pire, le poussant à se comporter mal de manière contrôlable.
Le premier résultat – un crash pur et simple – conduit généralement à un déni de service (DoS) bogue, où les attaquants pourraient délibérément planter une application, éventuellement encore et encore, pour causer des désagréments ou des problèmes absolus.
Ce dernier résultat, où les attaquants conservent suffisamment de contrôle sur le plantage pour reprendre complètement le programme bogué et remplacer le programme en cours d’exécution par un logiciel non fiable de leur choix, est connu sous le nom de exécution de code à distance (RCE).
Le RCE est généralement utilisé pour implanter des logiciels espions ou des logiciels malveillants, et constitue clairement un danger beaucoup plus grave que le DoS.
Pour le moment, rien n’indique que le crash de Spiniolas puisse être utilisé de manière fiable pour un exploit RCE complet, ou même qu’il puisse conduire à un RCE.
Mais le fait que les cybercriminels sachent désormais par où commencer à chercher rend ce bogue encore plus intéressant à éviter.
Comment le bug se déclenche-t-il ?
Si vous renommez délibérément l’un des appareils domestiques de votre réseau HomeKit afin qu’il ait un nom d’environ 100 000 caractères ou plus (Spiniolas a utilisé de manière variée 500 000 et 90 000 caractères dans ses expériences), l’application Home se bloquera apparemment lorsqu’elle essaiera ensuite de traiter avec l’appareil au nom étrange, et finalement planter.
Selon Spiniolas, Apple a récemment corrigé l’application Home pour vous empêcher de renommer les appareils avec des noms absurdement longs.
Mais le correctif n’empêche apparemment pas la dernière version de l’application de mal réagir aux appareils qui ont déjà des noms trop longs, et n’empêche évidemment pas les malfaiteurs d’utiliser des appareils qui n’ont pas été corrigés pour détecter les applications qui en ont.
Spiniolas n’est pas clair sur ce problème, mais nous avons déduit de son rapport que bien que les versions non corrigées de l’application Home se bloquent parfois en essayant de définir un nom d’appareil HomeKit extra-long, elles ne se bloquent parfois pas ou ne se bloquent qu’après le nom extra-long a été appliqué. Spiniolas a également montré comment créer une application iOS unique que vous pouvez installer localement sur votre propre appareil, à l’aide d’un compte développeur Apple, pour renommer les appareils HomeKit de manière non réglementée, que votre appareil soit patché ou non. Ainsi, même si vous n’êtes pas en mesure de définir vous-même des noms d’appareils HomeKit ultra-longs, vous devez supposer que les attaquants le peuvent.
Problème avec le centre de contrôle
Malheureusement, dit Spinioloas, si vous avez activé l’application Home dans Apple Centre de contrôle (le système de menus toujours disponible que vous pouvez afficher à tout moment en glissant du haut ou du bas de l’écran, selon la version de votre iPhone), l’application se chargera automatiquement en arrière-plan chaque fois que vous démarrerez votre téléphone.
Cela signifie que votre appareil peut entrer dans une boucle permanente « lockup-crash-try-again-lockup-crash-ad-infinitum » qui le laisse inutilisable sans répondre avant que vous n’ayez le temps d’entrer dans le Réglages menu et supprimez Accueil du Centre de contrôle.
Attrape-22 !
Vous pouvez reprendre le contrôle du centre de contrôle en accédant à l’application Paramètres ; mais vous devez d’abord reprendre le contrôle du centre de contrôle pour accéder à l’application Paramètres.
C’est pourquoi Spiniolas affirme que le seul moyen de sortir du dilemme est d’effectuer une récupération ou une DFU sur l’appareil qui ne répond pas.
Étant donné que cela supprime toutes vos données personnelles, l’application Home n’aura plus de noms d’appareils HomeKit à afficher jusqu’à ce que vous vous connectiez à votre compte iCloud pour la première fois et que vos détails HomeKit soient retéléchargés sur votre téléphone.
Cela vous donne une chance, avant que votre téléphone ne soit présenté avec des noms d’appareils HomeKit provoquant un crash, d’accéder à l’application Paramètres et de supprimer l’application Accueil de l’écran du Centre de contrôle.
Quant à renommer les appareils incriminés afin que vous puissiez en reprendre le contrôle en toute sécurité, Spiniolas suggère que vous devrez installer une application personnalisée (il propose un exemple de code que vous pouvez utiliser « à vos risques et périls » sur sa page GitHub) en utilisant un Apple Compte développeur et utilisez cette application pour renommer.
Que faire?
Nous considérons qu’il est extrêmement improbable que vous déclenchiez ce bogue par inadvertance sur votre propre réseau HomeKit, étant donné qu’il est peu probable que vous copiez et collez un nom d’appareil absurde dans l’application Home par erreur, puis appuyez délibérément sur [Save]
pour valider le nom étrange dans votre configuration HomeKit.
Donc, la façon la plus probable de vous débloquer est soit :
- Quelqu’un que vous avez déjà autorisé à accéder à votre réseau HomeKit décide de déclencher le bogue pour vous. Si vous avez judicieusement choisi vos voisins de confiance ou les membres de votre famille (et que vous leur faites confiance pour protéger leurs téléphones contre les cybercriminels et les pickpockets), ce risque devrait être très faible.
- Vous acceptez une invitation au réseau HomeKit de quelqu’un dont le propre réseau déclenchera le bogue. En supposant que vous considériez l’accès au réseau domotique de quelqu’un d’autre comme une responsabilité personnelle importante (ce qui est le cas !), ce risque devrait également être très faible.
En d’autres termes, atténuer ce problème est facile :
- Minimisez le nombre de personnes ayant accès à votre réseau HomeKit. Nous le recommandons vivement en tout cas.
- Minimisez le nombre de réseaux HomeKit vers lesquels vous acceptez vous-même les invitations. Nous le recommandons vivement en tout cas.
- Supprimez l’application Home du centre de contrôle Apple. Aller à Réglages > Centre de contrôle > Personnaliser les contrôles. Si Accueil apparaît dans le
INCLUDE
liste, appuyez sur le signe moins rouge à côté, puis appuyez sur le rouge[Remove]
bouton qui apparaît sur le côté droit. (Voir l’image ci-dessous.) - Effectuez une sauvegarde locale régulière des données de votre iPhone. Vous pouvez le faire sur un ordinateur Mac ou Windows à l’aide d’iTunes. Sous Linux, c’est encore plus simple : vous pouvez utiliser le
idevicebackup2
utilitaire pour faire une sauvegarde complète quand vous le souhaitez. Vous n’avez pas besoin d’un compte Apple pour conserver des copies locales régulières de vos photos, vidéos, messages, fichiers audio, etc. Si vous enregistrez les données sur un lecteur amovible crypté, vous pouvez les stocker à la fois hors ligne et hors site, et en cas d’urgence, vous aurez accès aux données de votre iPhone sans avoir besoin d’une connexion Apple fonctionnelle ou d’un appareil Apple.
Prochaines étapes
Comme nous ne sommes pas nous-mêmes des fans de domotique, nous n’avons pas de compte iCloud ni de réseau HomeKit pour nous entraîner.
Par conséquent, nous ne pouvons pas vous dire s’il existe un moyen de gérer les appareils HomeKit à partir de votre navigateur ou à partir d’un appareil non Apple, ce qui éviterait parfaitement l’application Home boguée…
… donc si vous êtes un utilisateur de HomeKit et que vous avez des suggestions pour d’autres lecteurs, faites-le nous savoir dans les commentaires ci-dessous !
.