Les pirates peuvent forcer les navigateurs iOS et macOS à divulguer les mots de passe et bien plus encore
-
iLeakage est pratique et nécessite un minimum de ressources. Un patch n’est pas (encore) disponible.
Les chercheurs ont conçu une attaque qui force le navigateur Safari d’Apple à divulguer les mots de passe, le contenu des messages Gmail et d’autres secrets en exploitant une vulnérabilité de canal secondaire dans les processeurs des séries A et M exécutant des appareils iOS et macOS modernes.
iLeakage, comme les chercheurs universitaires ont nommé l’attaque, est pratique et nécessite un minimum de ressources pour être réalisé. Cela nécessite cependant une ingénierie inverse approfondie du matériel Apple et une expertise significative dans l’exploitation d’une classe de vulnérabilité connue sous le nom de canal secondaire , qui divulgue des secrets basés sur des indices laissés dans les émanations électromagnétiques, les caches de données ou d’autres manifestations d’un système ciblé. Le canal secondaire dans ce cas est l’exécution spéculative, une fonctionnalité d’amélioration des performances trouvée dans les processeurs modernes et qui a constitué la base d’un large corpus d’ attaques ces dernières années. Le flux presque infini de variantes d’exploits a obligé les fabricants de puces – principalement Intel et, dans une moindre mesure, AMD – à se démener pour concevoir des mesures d’atténuation.
Exploiter WebKit sur le silicium AppleLes chercheurs mettent en œuvre iLeakage sous forme de site Web. Lorsqu’il est visité par un appareil macOS ou iOS vulnérable, le site Web utilise JavaScript pour ouvrir subrepticement un site Web distinct au choix de l’attaquant et récupérer le contenu du site affiché dans une fenêtre contextuelle. Les chercheurs ont réussi à exploiter iLeakage pour récupérer l’historique de visionnage de YouTube, le contenu d’une boîte de réception Gmail (lorsqu’une cible est connectée) et un mot de passe lorsqu’il est automatiquement rempli par un gestionnaire d’informations d’identification. Une fois visité, le site iLeakage nécessite environ cinq minutes pour profiler la machine cible et, en moyenne, environ 30 secondes supplémentaires pour extraire un secret de 512 bits, tel qu’une chaîne de 64 caractères.
Haut : un e-mail affiché dans la vue Web de Gmail. En bas : adresse, sujet et contenu de l’expéditeur récupérés.“Nous montrons comment un attaquant peut inciter Safari à afficher une page Web arbitraire, récupérant ensuite les informations sensibles qu’elle contient en utilisant une exécution spéculative”, ont écrit les chercheurs sur un site Web d’ information . « En particulier, nous démontrons comment Safari permet à une page Web malveillante de récupérer les secrets de cibles populaires de grande valeur, telles que le contenu de la boîte de réception Gmail. Enfin, nous démontrons la récupération des mots de passe, au cas où ceux-ci seraient remplis automatiquement par les gestionnaires d’informations d’identification.
Haut : page des comptes Google remplie automatiquement par le gestionnaire de mots de passe, où le mot de passe est googlepassword. En bas : fuite de données de page avec informations d’identification mises en évidence.Alors qu’iLeakage ne fonctionne sur les Mac que lors de l’exécution de Safari, les iPhones et iPads peuvent être attaqués lors de l’exécution de n’importe quel navigateur, car ils sont tous basés sur le moteur de navigateur WebKit d’Apple. Un représentant d’Apple a déclaré qu’iLeakage fait progresser la compréhension de l’entreprise et que l’entreprise est consciente de la vulnérabilité et prévoit d’y remédier dans une prochaine version logicielle. Il n’existe aucune désignation CVE pour suivre la vulnérabilité.
Les attributs uniques de WebKit constituent un ingrédient crucial de l’attaque. La conception des siliciums des séries A et M, respectivement la première génération de processeurs conçus par Apple pour les appareils iOS et macOS, est l’autre. Les deux puces contiennent des défenses destinées à protéger contre les attaques d’exécution spéculative. Les faiblesses dans la manière dont ces protections sont mises en œuvre ont finalement permis à iLeakage de l’emporter sur elles.
Exécution spéculative : le hack qui continue de pirater
Début 2018, deux équipes de recherche travaillant indépendamment l’une de l’autre ont dévoilé deux attaques, l’une connue sous le nom de Spectre et l’autre sous le nom de Meltdown. Tous deux ont pu récupérer des informations confidentielles en explorant un canal secondaire récemment découvert dans une fonctionnalité d’amélioration des performances connue sous le nom d’exécution spéculative, intégrée à pratiquement tous les processeurs modernes. Le déplacement de données de la mémoire système principale vers un processeur prend du temps. Pour réduire les temps d’attente, les processeurs modernes exécutent les instructions dès que les données requises sont disponibles plutôt que dans un ordre séquentiel.
Un ingrédient clé de ce paradigme hors service est de prédire les chemins que le processeur est susceptible de suivre. Lorsque la prédiction s’avère correcte, la tâche est accomplie plus rapidement qu’elle ne l’aurait été autrement. Dans le cas contraire, le processeur abandonne le chemin mal prévu et suit un nouveau chemin correct. Bien que les processeurs puissent inverser la plupart des effets, les chercheurs de Spectre et Meltdown ont découvert que certains artefacts au niveau microarchitectural, notamment les états du cache et des prédicteurs, ne pouvaient pas être restaurés. Ces informations ont permis aux chercheurs de concevoir des attaques qui ont trompé les processeurs Intel et AMD pour qu’ils prédisent de manière erronée les instructions sensibles qui déversaient les secrets d’une application vers une application distincte et sans rapport, une violation grave d’une frontière de sécurité fondamentale.
Au cours des années qui ont suivi, les fabricants de processeurs et de logiciels ont mis au point une multitude de méthodes pour atténuer les attaques d’exécution spéculative. Une mesure d’atténuation clé a été de limiter la capacité d’un navigateur ou d’une autre application à mesurer le temps précis nécessaire à un processeur pour effectuer une certaine opération. Dans les navigateurs, d’autres mesures d’atténuation prennent la forme de défenses connues sous le nom d’adressage 35 bits compressé et d’empoisonnement des valeurs.
Pseudo code pour un gadget de confusion de type spéculatif.Leakage représente plusieurs avancées. Le premier est sa capacité à vaincre ces défenses avec Safari fonctionnant sur des puces des séries A et M en exploitant une vulnérabilité de confusion de type. Deuxièmement, il s’agit d’une variante qui ne repose pas sur le timing mais plutôt sur ce que l’on appelle une condition de concurrence. Un troisième ingrédient clé est la capacité unique de WebKit à consolider des sites Web de différents domaines dans le même processus de rendu en utilisant la méthode JavaScript courante. window.open.
Présentation de la façon dont le gadget basé sur les conditions de concurrence fonctionne pour distinguer les accès au cache des échecs du cache.Sur leur site d’information, les chercheurs ont écrit :
Afin de construire iLeakage, nous commençons par procéder à une ingénierie inverse de la topologie du cache sur les processeurs Apple Silicon. Nous avons ensuite surmonté les limitations de minuterie d’Apple en utilisant un nouveau gadget basé sur la spéculation, qui nous permet de distinguer les accès individuels au cache des échecs de cache, même si nous n’avons accès qu’à des minuteries à faible résolution. Nous présentons également une variante de ce gadget qui n’utilise pas de minuterie, exploitant plutôt les conditions de concurrence. Après avoir utilisé notre gadget basé sur la spéculation pour construire des ensembles d’expulsion, nous avons procédé à l’analyse de la résilience des canaux secondaires de Safari. Ici, nous contournons l’adressage 35 bits de Safari et les contre-mesures d’empoisonnement de valeur, créant une primitive qui peut lire et divulguer de manière spéculative n’importe quel pointeur 64 bits dans le processus de rendu de Safari. En combinant cela avec une nouvelle méthode de consolidation de sites Web de différents domaines dans le même espace d’adressage, nous sommes en mesure de lancer une attaque de confusion de type spéculatif qui divulgue des informations sensibles.
Dans un document de recherche (PDF), les chercheurs décrivent ainsi la variante intemporelle :
Nous combinons toutes nos primitives construites ci-dessus dans une preuve de concept (PoC) de gadget Spectre v1 intemporel. À un niveau élevé, nous y parvenons en remplaçant la méthode basée sur la synchronisation du cache pour divulguer des secrets dans le cadre de spéculations par notre gadget permettant de distinguer de manière intemporelle les échecs de cache des accès au cache. Ici, nous montrons que nos attaques ont une précision presque parfaite sur Safari, Firefox et Tor.
Mettre tous ensemble
Pour que l’attaque fonctionne, un ordinateur vulnérable doit d’abord visiter le site Web iLeakage. Pour les attaques impliquant YouTube, Gmail ou tout autre site Web spécifique, un utilisateur doit être connecté à son compte en même temps que le site d’attaque est ouvert. Et comme indiqué précédemment, le site Web de l’attaquant doit passer environ cinq minutes à sonder l’appareil visité. Ensuite, en utilisant le window.openMéthode JavaScript, iLeakage peut amener le navigateur à ouvrir n’importe quel autre site et à commencer à siphonner certaines données à une vitesse comprise entre 24 et 34 bits par seconde.
Comme l’explique le document de recherche :
Nous commençons par rappeler que si Safari suit généralement un modèle strict de processus par onglet, les pages ouvertes par le window.openla fonction partage un processus de rendu avec la page parent. Ainsi, nous avons créé une page d’attaquant qui lie window.openà un onmouseoverécouteur d’événements, nous permettant d’ouvrir n’importe quelle page Web dans notre espace d’adressage chaque fois que la cible a le curseur de sa souris sur la page. Nous notons que même si la cible ferme la page ouverte, le contenu en mémoire n’est pas immédiatement effacé, permettant à notre attaque de continuer à divulguer des secrets. Enfin, comme window.openeffectue la consolidation quelle que soit l’origine des pages Web parent et ouvertes, nous hébergeons la page de notre attaquant sur un serveur Web non accessible au public, tout en utilisant window.openpour consolider les pages d’autres domaines.
Il est probable que de nombreuses cibles reconnaissent la fenêtre contextuelle générée par iLeakage et la ferment. L’attaque fonctionnera même dans ce cas car le contenu reste intact en mémoire, permettant à iLeakage de continuer à divulguer des secrets.
Les types de données pouvant être récupérées comprennent :
Mots de passe remplis automatiquement par les gestionnaires d’informations d’identification
Contenu de la boîte de réception Gmail
Historique des vidéos regardées sur YouTube
iLeakage est une attaque pratique qui ne nécessite que des ressources physiques minimales. Le plus grand défi — et il est considérable — est le haut calibre de l’expertise technique requise. Un attaquant doit non seulement avoir des années d’expérience dans l’exploitation des vulnérabilités d’exécution spéculative en général, mais également disposer de puces entièrement rétro-conçues des séries A et M pour mieux comprendre le canal secondaire qu’elles contiennent. Rien n’indique que cette vulnérabilité ait déjà été découverte auparavant, et encore moins activement exploitée dans la nature.
Cela signifie que les chances que cette vulnérabilité soit utilisée prochainement dans des attaques réelles sont minces, voire proches de zéro. Il est probable que le correctif prévu par Apple sera en place bien avant qu’un site d’attaque de type iLeakage ne devienne viable.
-
je croyais que mac était invulnérable :! :! :! :!
-
-
Ce qui est sur iPhone reste sur iPhone, ha ba non