Disque dur « chiffré » : la chambrière démoniaque joue du fer à souder

Actualités - Hack - Posté on 06 Sep 2010 at 8:44 par Solange Belkhayat-Fuchs

Le blogueur Sprite_TM nous enseigne comment contourner la protection d’un disque dur sécurisé utilisant une interface de chiffrement matérielle. Le Disk Genie est en fait un disque dur externe tout à fait conventionnel, accompagné dans le cas présent d’une interface USB et d’une carte chargée du chiffrement des données au vol. Que ferait un pirate pour attaquer un tel conteneur de données ? Il lancerait une attaque en brute force pour découvrir le mot de passe et par conséquent l’accès à la clef de chiffrement.

Mais les concepteurs ont prévu ce scénario : ils interdisent à l’usager d’entrer plus de trois sésames erronés. Passé ce nombre de tentatives, le disque se verrouille définitivement et refuse toute nouvelle tentative d’accès… même après mise hors tension de l’ensemble. En examinant le près la fameuse électronique de contrôle, l’auteur a découvert que le cœur de ce système de protection était un simple contrôleur PIC série 16F, avec un compteur incrémental en eeprom comptant les tentatives de logon erronées. Une écriture en mémoire qui provoque une légère surconsommation. Ce détail découvert, il suffisait à l’auteur d’utiliser cet appel de courant (détecté via une résistance série et une légère connaissance de la loi d’ohm) pour piloter un trigger qui, à son tour, allait désactiver l’entrée « Write Enable » du PIC. Le compteur n’est plus incrémenté, le hacker peut alors lancer n’importe quel outil de bruteforcing, il ne craindra plus aucun verrouillage de disque. Simple comme l’œuf de Christophe Colomb. Les attaquants plus subtils peuvent également utiliser les rainbow table ou la technique de la « chambrière maléfique » développée par Joanna Rutkowska.

Sprite_TM nous avait déjà offert un hack fort semblable appliqué à une clef usb prétendument sécurisée, et qu’un simple strap rendait totalement sourde aux tentatives répétées de découvertes de mot de passe. Parfois, deux gouttes de soudure sont plus efficaces que 100 lignes d’assembleur.

1 commentaire

  1. Gourmet

    Encore un exemple de code incomplet qui ne gère pas les erreurs (interdite l’écriture doit générer un trap) ou, pour un logiciel de sécurité, qui ne vérifie pas le contenu du compteur après être censé l’avoir incrémenté.
    La prochaine étape c’est quoi ? Réécrire l’ensemble du code (substituer l’EEPROM) ?
    db

Laisser une réponse