Exclu : une faille iOS permet une attaque en force brute sur les restrictions

Il y a quelques jours, lors d’un petit test, nous avons découvert une faille dans iOS, utilisable sur l’iPad et l’iPhone. Elle permet d’effectuer une attaque en force brute contre le code utilisé pour mettre en place les restrictions (le contrôle parental) sous iOS, malgré les protections d’Apple.

Une protection inefficace

iOS propose de mettre un code pour restreindre l’accès à certaines fonctions (la caméra, l’installation d’applications, etc.). Ce code est constitué de 4 chiffres, ce qui donne seulement 10 000 possibilités. Il est donc envisageable de tester toutes les combinaisons pour découvrir le code, et Apple s’en rend bien compte : par défaut, le clavier virtuel est rendu inopérant après un certain nombre d’essais ratés. Après 6 essais, il est bloqué pendant 1 minute, puis chaque mauvais code ajoute du temps : 5, 15 puis 60 minutes entre chaque essai. Mais il y a une faille.

Un clavier physique

Elle est assez simple : il suffit d’utiliser un clavier physique. En effet, les claviers physiques restent fonctionnels même si le clavier virtuel est bloqué. On peut donc utiliser un clavier Bluetooth sur iPad, iPhone ou iPod touch, le dock équipé d’un clavier sur un iPad ou même un clavier USB classique avec l’adaptateur pour appareils photo sur l’iPad.

Systématiser l’attaque

Image 1 : Exclu : une faille iOS permet une attaque en force brute sur les restrictionsLa carte Teensy 3.0S’il est possible de tester toutes les possibilités manuellement, c’est assez fastidieux. Nous avons donc utilisé une carte de développement Teensy 3.0. Cette petite carte permet en effet d’émuler un clavier USB et avec un peu de code, il est possible de systématiser l’attaque. Concrètement, il suffit de brancher la carte à un iPad avec l’adaptateur USB et de la laisser tester toutes les possibilités. Nous l’avons programmé pour tester une combinaison toutes les 3 secondes environ, ce qui permet de trouver le code en un peu plus de 8 heures dans le pire des cas.

La vidéo montre un court exemple, avec le code 0015 : si l’interface indique qu’il faut attendre, notre carte teste tout de même toutes les possibilités. Nous avons testé sur un iPad 3 et un iPad 1 avec succès, mais l’attaque fonctionne aussi sur l’iPhone en Bluetooth.

Attaque en force brute contre iOS

Notons que nous avons bien évidemment prévenu Apple, que la faille est fonctionnelle dans la dernière version d’iOS (6.1.3) et le code demandé sur l’écran d’accueil n’est par contre pas touché par cette faille : l’appareil est bien bloqué après plusieurs codes erronés.

👉 Vous utilisez Google News ? Ajoutez Tom's Hardware sur Google News pour ne rater aucune actualité importante de notre site.

Votre Newsletter Tom's Hardware

📣 Souscrivez à notre newsletter pour recevoir par email nos dernières actualités !