N’en déplaise aux saigneurs du code et aux amoureux du langage C et du dump mémoire par port firewire, il est parfois plus simple de récupérer un mode de passe Admin avec un fer à souder et quatre grains d’astuce. C’en est même devenu un véritable sport depuis que Hackaday chante les exploits de la carte Bus Pirate, développement open hardware et open source servant à émuler les principaux bus sériels de la création.
Pourquoi les bus sériels ? parce que c’est généralement sous la forme de composants à adressage série que l’on retrouve les principaux successeurs des « mémoires de setup » et autres « unités de stockage de configuration ».
Pour s’en convaincre, il suffit de parcourir cet article de « So do it yourself », qui explique par le menu comment récupérer le mot de passe « oublié » d’un IBM Thinkpad en allant fouiller dans la mémoire semi-permanente de configuration (celle qui ne s’efface pas en ôtant la pile du même métal). Ce composant, soi-disant « absolument inviolable » (copyright IBM, all right reserved) est accessible via un bus I2C. I2C est une technologie top secrète d’origine Philips, qui équipe les téléviseurs, machines à laver, réfrigérateurs…. En somme que du matériel à la limite de la classification « confidentiel défense » et dont il est excessivement difficile de se procurer la documentation ailleurs que dans les coffres-forts du réparateur radio-tv du coin. Après récupération du contenu de l’eeprom et passage au crible d’un utilitaire spécialisé, le mot de passe « administrateur » de l’ordinateur apparaît.
Un exemple similaire avait été publié courant 2006, expliquant comment « dégeler » une Xbox classique en récupérant le « mot de passe disque dur ». Rien de nouveau sous le soleil donc, si ce n’est que ce qui fonctionne sur une console de jeu s’applique également à bon nombre d’équipements informatiques.
Car l’usage de mémoires à accès sériel est de plus en plus fréquent, et le « haking par intrusion sur un port Jtag » ou par lecture directe du contenu d’un composant est un véritable jeu d’enfant. Le seul niveau de protection qui garantisse une certaine solidité, c’est le manque de communication entre spécialistes du « hard » et gourous du « soft ». Un manque de communication qui a tendance à disparaître avec le temps, particulièrement depuis que l’on utilise de façon fréquente microcontroleurs et fpga.
La rédaction de CNIS-Mag émet cependant une certaine réserve quand à l’interface conseillée par les deux derniers articles cités. L’usage de diodes zener d’écrêtage de tension est une approche un peu hussarde qui n’est réellement applicable que sur des entrées à « collecteur ouvert ». Or, ce n’est pas toujours le cas. Pour compliquer la question, il faut savoir que l’on trouve de plus en plus souvent (matériel mobile, routeurs etc) des logiques 3,3 volts, qui n’apprécient pas un signal sériel 5V (ou du moins qui l’apprécient, mais durant une période relativement courte généralement suivi du trépas du composant). Ceci sans mentionner la présence de parasites (overshoot) qui, selon la qualité des composants, rend toute lecture impossible. Une note d’application Philips AN97055 explique la manière de convertir proprement les tensions de signaux d’un bus de manière bidirectionnelle, et divers composants, tel le GTL2002 sont là pour faciliter la vie du White Hat récupérateur de mots de passe involontairement oubliés.
Je n’ai pas eu le temps de lire la documentation citée en article, mais j’ai eu celui de supposer que le titre devait contenir le mot « hardware » en lieu et place de « harware » ? Ou un ignorance de ma part ?