Passer au contenu

La recette de l’attaque “la plus sophistiquée jamais vue” sur iPhone surprend jusqu’aux experts

L’attaque en question, utilisée dans la suite d’espionnage Pegasus, permettait de pirater n’importe quel iPhone entre 2019 et décembre 2022, simplement en lui envoyant un iMessage vérolé. Des mois après sa résolution, Kaspersky explique dans le détail son fonctionnement très astucieux.

Les férus de la cybersécurité connaissent bien le Chaos Communication Congress, la grand-messe annuelle des pentesters, hackers éthiques et autres spécialistes du domaine organisée par le Chaos Computer Club qui se tient à Hambourg (Allemagne) depuis 2019.

L’occasion de permettre aux meilleurs chercheurs dans le monde de parler de leurs trouvailles, et de décortiquer des moments importants pour l’avancement du domaine – dont peu de détails sont généralement publiquement dévoilés.

L’attaque 0-click est celle qui peut faire le plus de dégâts (car on ne la remarque pas)

Cet année l’une des interventions les plus importantes était sans conteste celle de trois chercheurs de Kaspersky, Boris Larin, Leonid Bezvershenko et Georgy Kucherin, venus parler de “l’attaque 0 click la plus sophistiquée jamais vue sur un iPhone”. 

Ce type d’attaque est la plus intéressante pour les pirates et firmes ou services de renseignements puisqu’il suffit à ces derniers de l’initier, sans action de la part de l’utilisateur. En général, ce type d’attaque repose sur une série de failles 0 day, c’est à dire qui ne sont pas encore connues par la communauté de chercheurs.

Ces failles, découvertes par des pirates et autres experts restent souvent de précieux secrets, qui peuvent se monnayer plusieurs milliers à millions de dollars en fonction de leur efficacité et de la difficulté à les contrer. Généralement les attaques 0 click sont relativement triviales à contrer.

Ce qui n’était pas le cas de l’attaque dont il est question ici, utilisée par la solution d’espionnage de NSO Group Pegasus – puisqu’elle aurait permis un nombre inconnu de piratages entre sa découverte en 2019 et l’arrivée de iOS 16.2 en décembre 2022 qui a mis définitivement fin au problème. Trois ans qui ont permis aux trois chercheurs de tout décortiquer et comprendre sur cette attaque, à une exception qui les rend encore très perplexes.

On vous prévient, c’est assez technique – nous avons tenté de l’expliquer le plus simplement possible. Les curieux pourront consulter le post détaillé des chercheurs en cliquant ici pour des informations bien plus détaillées. Baptisée “Opération Triangulation“, l’attaque commence par l’envoi d’une pièce jointe malveillante via iMessage.

Voici comment se déroulait la prise de contrôle de votre iPhone par les pirates

Attack Chain Iphone
© Boris Larin, Leonid Bezvershenko, et Georgy Kucherin / Kaspersky

Cette pièce jointe, traitée automatiquement par l’application, n’affiche aucun signe suspect pour l’utilisateur. Elle exploite une vulnérabilité – désignée CVE-2023-41990 – dans une instruction TrueType, ADJUST, spécifique à Apple et peu documentée, présente depuis les années 90.

L’attaque utilise une technique avancée de programmation, connue sous le nom de “programmation orientée retour/saut”. Elle s’appuie sur plusieurs étapes codées dans les langages NSExpression/NSPredicate. L’objectif est de modifier l’environnement de la bibliothèque JavaScriptCore pour exécuter un exploit d’élévation de privilèges écrit en JavaScript.

Ce code JavaScript, bien que délibérément obscurci et compacté, compte environ 11 000 lignes, principalement dédiées à la manipulation de la mémoire de JavaScriptCore et du noyau. L’exploit utilise une fonctionnalité de débogage de JavaScriptCore, nommée DollarVM ($vm), pour manipuler la mémoire de JavaScriptCore depuis le script et exécuter des fonctions d’API natives.

L’attaque a été conçue pour fonctionner sur les anciens comme les derniers iPhone, incluant un contournement du Code d’Authentification des Pointeurs (PAC) pour les modèles récents. Le code prend ensuite le contrôle de la mémoire physique en utilisant la vulnérabilité CVE-2023-32434 de dépassement de nombre entier.

De là, le code patche le mappage de la mémoire XNU pour obtenir un accès en lecture/écriture à la totalité de la mémoire physique de l’appareil. Cette étape contourne également la couche de Protection des Pages (PPL), une mesure de sécurité corrigée sous le numéro CVE-2023-38606.

Après avoir exploité toutes les vulnérabilités, l’exploit JavaScript peut alors exécuter n’importe quelle action sur l’appareil, y compris l’installation de logiciels espions. Dans ce cas précis, les attaquants ont choisi de : (a) lancer le processus IMAgent et injecter un code pour effacer les traces de l’exploitation ; (b) exécuter un processus Safari en mode invisible et le rediriger vers une page web contenant l’étape suivante.

Le dernier maillon clé de l’attaque repose sur un script Safari : une page web injecte un code vérolé décrit par la faille CVE-2023-32435 permettant d’exécuter un shellcode. De là ce script exécute un autre exploit du noyau sous la forme d’un fichier objet Mach. Bien que massif en taille et fonctionnalités, cet exploit est différent de l’exploit du noyau écrit en JavaScript.

Il utilise les mêmes vulnérabilités (CVE-2023-32434 et CVE-2023-38606) et se concentre également sur la manipulation de la mémoire du noyau. Cet exploit obtient des privilèges root et procède à l’exécution d’autres étapes, chargeant des logiciels espions sur l’appareil.

Un dernier mystère reste entier

Vous l’aurez compris, si ces chercheurs parlent ainsi de l’attaque, c’est qu’elle est aujourd’hui impossible à répliquer, et qu’ils en connaissent tous les ressorts après d’intenses efforts de reverse engineering. Tous… à l’exception d’un mystère qui reste à ce jour irrésolu : la faille CVE-2023-38606 qui repose sur une fonctionnalité matérielle obscure des appareils Apple lancés après l’iPhone.

Les chercheurs ne “comprennent” tout simplement pas comment des chercheurs même chevronnés sont parvenus à découvrir cette fonctionnalité matérielle. Ils appellent ainsi leurs homologues éthiques à “trouver des explications crédibles sur comment les pirates ont appris l’existence de cette fonctionnalité”. 

On sent en effet dans cette remarque de forts soupçons d’espionnage industriel – ce qui serait en soit un 5e exploit caché dans le déroulé de cette attaque, Apple étant connu pour sa culture du secret, déployant des mesures de sécurité interne particulièrement astreignantes pour éviter tout problème de ce type.

Les chercheurs notent que la sécurité de certains aspects des iPhone repose parfois sur ce type de fonctionnalités cachées, tout en soulignant que “les systèmes dont la sécurité se base sur [ce type de fonctionnalités cachées] ne peuvent jamais être totalement sécurisés”. Une remarque dont Apple est appelé, semble-t-il, à prendre enfin en compte…

Des détails encore plus avancés sur les étapes de cette attaque fascinante seront, selon les chercheurs, dévoilés dans les prochains mois pour aider la communauté d’experts à sécuriser encore davantage leur code et plateforme matérielle.

📍 Pour ne manquer aucune actualité de Presse-citron, suivez-nous sur Google Actualités et WhatsApp.

Antivirus Bitdefender Plus
Antivirus Bitdefender Plus
Par : Bitdefender
3 commentaires
3 commentaires
    1. Bonjour,

      J’imagine que tous les scénarios sont possibles (et qu’il sera in fine compliqué de connaître le fin mot de l’histoire). Toutefois il faut noter que NSO Group est une entreprise de sécurité basée en Israël et non aux États-Unis.
      Bien Cdt. RPB

Les commentaires sont fermés.