Un exemple d'ingénierie avancée sur les appareils iOS
Ramtil Amin a publié un article passionnant dans lequel il s'intéresse au système de stockage des appareils iOS d'Apple.
Depuis l'iPhone 6S, Apple utilise des puces de mémoire Flash NAND au format NVMe (il en va aussi ainsi dans ses Mac récents).
Or, il s'agit d'une norme avec des spécifications. Fort de ces connaissances, il a décidé de se pencher sur les contenu de ces mémoires.
Il a ensuite créé une carte PCI-Express capable de les lire sur un ordinateur puis le code nécessaire pour le faire.
Dans le cas de l'iPhone (nous ignorons si c'est le cas pour les Mac), tout le contenu de la Flash est chiffré. Il n'est donc pas question de lire directement les données. En revanche, on peut les cloner et par exemple redémarrer un nombre illimité de fois un iPhone en essayant des mots de passe sans que le téléphone puisse réellement les effacer une fois que l'on a atteint le nombre limite d'essais.
Voici un appareillage développé dans cette intention. Il permet de réinjecter autant de fois que nécessaire le contenu de la mémoire sauvegardée sur la carte logique d'un iPhone sans avoir à en ressouder une à chaque fois, ce qui sera infiniment plus long encore.