Lors d'une des conférences du 38e Chaos Communication Congress (organisé par les allemands du Chaos Computer Club), Thomas Roth a expliqué comment il avait hacké le contrôleur USB-C des iPhone 15. Dans sa présentation, il donne quelques détails sur les fonctions peu connues de la prise USB-C des iPhone, comme celle qui permet d'effectuer des liaisons de type série.
Dans les iPhone, la puce qui contrôlait le port Lightning s'appelait Tristar ou Hydra. Dans les iPhone dotés d'une prise USB-C, il s'agit du contrôleur ACE3, qui est visiblement une évolution du ACE2 vu dans les Mac. Cette puce se place entre la prise elle-même et le système sur puce, et elle permet de reconfigurer la prise pour qu'elle fonctionne comme une prise USB mais aussi comme un port série, pour le debug, etc.
La première partie de la conférence explique comment prendre la main sur la puce ACE2 des Mac, avec diverses explications sur le fonctionnement interne, la façon dont Apple protège les mises à jour du firmware du composant, mais aussi des explications basiques sur la manière dont ce firmware a été récupéré, notamment grâce à la distribution GNU/Linux Asahi.
La puce ACE3 des iPhone
Pour la puce ACE3, c'est un peu plus compliqué. Elle est basée sur un composant Texas Instruments (comme la ACE2) mais sans aucune information sur son fonctionnement ni sur ses spécifications. Mais elle est aussi employée dans les MacBook Pro équipés d'une puce M3 Pro ou Max, en plus des iPhone 15, ce qui a donné un angle d'attaque. Les détails sont compliqués, et se basent sur une écoute avec un dispositif SDR, qui a permis littéralement de mesurer les champs électromagnétiques émis par le composant, pour permettre de développer un firmware alternatif. Selon Thomas, le matériel nécessaire pour prendre le contrôle de la puce est peu onéreux, une soixantaine de dollars suffisent.
Après tout ceci, vous vous posez peut-être une question : y a-t-il un risque de piratage ? La réponse est négative, de l'aveu même de l'auteur, mais aussi d'Apple. La technique est extrêmement complexe et s'apparente plus à de la recherche fondamentale qu'à du piratage pur et dur : la présentation se concentre sur la récupération du firmware et ses éventuelles modifications — techniquement, ce qu'il explique s'approche d'un jailbreak de la puce — mais il ne donne aucun exemple pratique de ce qu'il est possible de faire une fois le fimware récupéré ou modifié. Par ailleurs, si la présentation met en avant le fait que le contrôleur est présent dans les iPhone 15, la démonstration repose sur un MacBook Pro. Reste que la démonstration est intéressante tout de même si le côté technique vous intéresse.