Piratage : les voies de l’iPhone ne sont pas impénétrables

MobilitéOS mobilesSécurité
iphone-piratage-massif

Lumière est faite sur une campagne qui aurait permis d’injecter un mouchard sur un grand nombre d’iPhone via des sites web infectés.

Combien d’iPhone peut-on infecter en deux ans et quelques ? Beaucoup, d’après Project Zero.

L’équipe de chercheurs constituée par Google a mis le doigt sur ce qui semble être une campagne massive d’espionnage.

Cette campagne s’appuie sur des sites web recevant « des milliers » de visiteurs par semaine. Piratés, ils permettent de diffuser un mouchard capable de récupérer, entre autres, des photos, des données de géolocalisation et des messages, y compris sur des services chiffrés.

Project Zero a découvert cinq méthodes d’infection exploitant 14 failles, essentiellement dans le noyau d’iOS et dans le navigateur Safari.
Aujourd’hui toutes corrigées*, elles ont probablement permis d’injecter le mouchard pendant plus de deux ans sur un grand nombre d’iPhone.

Communications non sécurisées

La plus « ancienne » des méthodes d’infection fonctionne avec iOS 10.0.1 (sorti en septembre 2016) à 10.1.1 (novembre 2016).
La vulnérabilité dont elle tire parti se trouve dans une fonction liée à un pilote graphique.

Une deuxième méthode repose sur une faille dans le noyau, au niveau du composant qui permet à un pilote de notifier l’accomplissement d’une opération. Elle touche iOS 10.3 (mars 2017) à 10.3.3 (juillet 2017). Apple l’a corrigée avec iOS 11.2 (décembre 2017).

La méthode utilisée pour iOS 11 (septembre 2017) à 11.4.1 (mars 2018) reposait sur la bibliothèque mettant en œuvre XPC. Celui-ci permet de gérer les communications entre les processus qui composent une application.

message-xpc

Pour iOS 12 (septembre 2017) à 12.1 (octobre 2018), une autre faille XPC a été utilisée, en combinaison avec une vulnérabilité dans le noyau.

La plus « récente » des méthodes concerne iOS 11.4.1 (juillet 2018) à 12.1.2 (décembre 2018). Elle exploite une fonction introduite en 2014 avec iOS 8 : « vouchers », destinée à transmettre des attributs arbitraires entre processus.

Pour disposer d’une première empreinte sur les iPhone, les pirates ont mis en œuvre des failles dans WebKit. Toutes permettent d’exécuter du code dans le processus de rendu WebContent, notamment en jouant sur le compilateur JavaScript.

Le mouchard se place dans le dossier /tmp de l’iPhone. Il se connecte toutes les minutes à un serveur de contrôle.
Étonnamment d’après de nombreux observateurs, les communications se font en HTTP non sécurisé et les adresses IP du serveur figurent dans le code du malware. Ce qui fait dire à certains que la campagne est peut-être le fait d’un État qui a « acheté » les exploits et maladroitement codé le mouchard.

* Les deux dernières l’ont été le 7 février 2019 avec iOS 12.1.4.

Photo d’illustration © Apple

Lire aussi :

Lire la biographie de l´auteur  Masquer la biographie de l´auteur