En revanche, les modèles plus anciens comme l'iPhone X (puce A11) ne sont pas vulnérables, car leur pilote USB réinitialise manuellement le pointeur DMA après chaque paquet . Les puces A14 et plus récentes ne sont pas non plus affectées, Apple ayant corrigé la configuration du DART (protection mémoire) dans leur SecureROM
.
Le défaut se situe dans le contrôleur USB Synopsys DWC2 intégré à la puce . Voici le mécanisme technique :
Décalage du pointeur mémoire : Le contrôleur utilise un tampon circulaire (ring buffer) pour stocker jusqu'à trois paquets USB Setup. Après chaque écriture, il incrémente un pointeur matériel de la taille des données écrites. Après le troisième paquet, il le décrémente d'une valeur fixe de 24 octets .
Paquets sur mesure : Le contrôleur accepte des paquets plus petits que les 8 octets standards, mais les stocke toujours par alignement de 4 octets. Lorsqu'un petit paquet est reçu, l'incrément du pointeur (données réelles écrites) ne correspond pas à la décrémentation fixe de 24 octets, créant un sous-flux de tampon (buffer underflow) de 12 octets — le pointeur recule dans la mémoire .
Écriture mémoire illégale : Cela permet à l'attaquant d'écraser des zones de SRAM qui devraient être inaccessibles pendant le démarrage, y compris les données de pile et les métadonnées du tas .
Exécution de code : Sur A12, l'attaquant écrase un registre de lien (LR) sauvegardé sur la pile de la tâche USB pour prendre le contrôle direct du compteur de programme (PC). Sur A13, les codes d'authentification de pointeur (PAC) compliquent l'attaque, qui nécessite plusieurs étapes pour contourner également les sommes de contrôle du tas et les compteurs de panique .
Le BootROM (SecureROM) est le premier code que la puce exécute lors de la mise sous tension. Il est gravé dans une mémoire morte (ROM) lors de la fabrication de la puce et est immuable . Comme la cause est un défaut matériel du contrôleur USB — et non un bug logiciel — Apple ne peut pas le corriger avec une mise à jour du firmware ou du système d'exploitation
. La seule véritable parade est de migrer vers du matériel plus récent (A14 ou ultérieur)
.
Paradigm Shift a notifié Apple avant la publication, mais la nature physique de la vulnérabilité empêche tout correctif . Les utilisateurs d'iPhone XS, XR et 11 doivent donc être conscients que ces appareils resteront vulnérables à vie, même si l'exploitation nécessite un accès physique au moyen d'un câble USB et la mise en mode DFU (Device Firmware Update)
.
Comments
0 comments