La TPM (Trusted Module Platform) intégrée est aujourd’hui un élément clé de la sécurité du système. A tel point que, comme vous le savez peut-être, Microsoft n’autorisera l’installation de Windows 11 que sur les systèmes équipés de ce système de sécurité (à quelques exceptions près, comme nous vous l’avons dit ici), mettant les utilisateurs de systèmes plus anciens qui ne disposent pas d’un Puce TPM dans une situation compliquée et qui n’ont pas la possibilité de l’installer.
Le fait est que les fabricants et les développeurs parient sur des puces dédiées à garantir la sécurité de certaines opérations, le TPM accompagnant des systèmes compatibles et une enclave sécurisée comme la mise en œuvre de la même conçue par Apple. Et nul doute que dans la grande majorité des cas, ce système offre un niveau de sécurité plus que suffisant et avec lequel on peut rester serein.
Cependant, le TPM s’est avéré ne pas être infaillible, dans certaines circonstances et avec une procédure complexe mais réalisable, il est possible de contourner la protection qui empêche en théorie d’allumer et d’utiliser un système et, dans ces mêmes circonstances, d’accéder à un réseau d’entreprise , avec les risques énormes que cela pose. Avant d’analyser la vulnérabilité, nous insistons à nouveau sur ce que nous avons mentionné précédemment, ce sont des circonstances très particulières, et ce n’est une attaque accessible à personne, mais il est tout de même important de la connaître et, si nécessaire, de la prévenir.
Cette découverte est le résultat d’une enquête menée et rendue publique il y a quelques jours par Groupe Dolos, dont les auteurs ont obtenu un accès complet au disque dur d’un ordinateur portable préconfiguré pour donner accès à un réseau d’entreprise via une connexion VPN sécurisée. Ce type de configuration est très courant dans les entreprises qui donnent ces ordinateurs à leurs salariés afin qu’ils puissent télétravailler en toute sécurité.
Le TPM est sécurisé, sa mise en œuvre moins
Compte tenu de la sécurité offerte par la puce TPM, de nombreuses attaques sont écartées, les chercheurs ont donc tenté une approche différente, c’est-à-dire qu’ils ont recherché des faiblesses liées à la puce elle-même et à son intégration dans le système. Avec la configuration la plus courante, le système démarre directement sous Windows, sans qu’une étape préalable ne nécessite la saisie d’un mot de passe. Une seule clé, stockée sur la puce, est utilisée pour déverrouiller le système.
La construction des puces TPM elles-mêmes rend pratiquement impossible l’accès direct à leur contenu. Certains modèles auraient même une fonction d’autodestruction physique si des tentatives d’accès à l’intérieur sont détectées. Pendant ce temps, les points qui attachent la puce à la carte sont si petits qu’en pratique, il est presque impossible de leur souder quoi que ce soit pour tenter d’accéder aux données transmises vers et depuis la puce.
Et quel serait l’intérêt d’accéder à un tel trafic de données ? C’est là qu’il faut savoir que la connexion TPM au CPU se fait via un bus SPI (Serial Peripheral Interface) et que, du fait de l’implémentation de la sécurité de BitLocker, placer un renifleur sur ce bus de données pourrait permettre la clé de déchiffrement de l’unité de stockage du système à obtenir, puisqu’il est transmis en clair.
Idéalement, pour des raisons de sécurité, le TPM devrait avoir un bus dédié le reliant au CPU, mais pour des raisons de conception et de coût, il s’avère que le même bus utilisé pour cette connexion est également utilisé par d’autres composants de la carte mère, dont le CMOS puce qui abrite le BIOS du système. Quelle est la particularité de cette puce ? Eh bien, contrairement au TPM, les broches qui le connectent à la carte mère sont très grandes, il est donc beaucoup plus facile de leur connecter quelque chose.
L’étape suivante consistait à analyser tout le trafic de données sur le bus SPI auquel le BIOS et la puce TPM étaient connectés, en filtrant toutes les données pour extraire la clé de cryptage. Il ne leur a pas fallu longtemps pour exploiter l’accès système au disque dur pour accéder au contenu de l’unité de stockage. A partir de ce moment, la guerre était déjà gagnée, les chercheurs avaient déjà obtenu la clé nécessaire pour déchiffrer le contenu du disque.
Avec la clé de déchiffrement du lecteur obtenue, les chercheurs n’ont plus eu à faire face à l’impossibilité de déverrouiller le système sans la clé : l’étape suivante consistait à déconnecter le SSD de l’ordinateur portable et à le connecter à un autre système pour accéder à son contenu.
Encore pire qu’il n’y paraissait
Lors de l’analyse du contenu du disque dur, une découverte des plus intéressantes a été faite : le PC avait un client VPN d’entreprise installé dessus, préinstallé et préconfiguré, prêt à l’emploi. Contrairement aux clients VPN pour les particuliers, les solutions d’entreprise ont une caractéristique très intéressante : elles établissent la connexion avant que l’utilisateur ne se connecte. De cette façon, les scripts de domaine sont exécutés sur les systèmes dès leur mise sous tension, évitant ainsi le besoin d’authentification par mot de passe (propre à chaque ordinateur) dans chaque cas, ce qui pourrait être un cauchemar pour l’administrateur de tels systèmes.
Qu’est-ce que ça veut dire? Eh bien, à ce stade, les chercheurs et les attaquants potentiels pourraient recourir à de nombreuses techniques bien connues pour introduire des logiciels malveillants dans le SSD du système attaqué, qui seraient ensuite réassemblés sur le PC. Et lorsque ce PC, ou un vidage de son disque dans une machine virtuelle, est démarré, il accèdera immédiatement au réseau de l’entreprise, de sorte que non seulement la sécurité de ce système, mais de toute l’infrastructure, aura été compromise.
Comme nous l’avons mentionné au début, il s’agit d’une attaque complexe, car elle nécessite un accès physique au système et, avec certaines mesures de sécurité supplémentaires, elle est invalidée. L’option la plus simple est que l’utilisateur doit entrer un mot de passe pour démarrer le système (le système lui-même, pas Windows), et un système de sécurité supplémentaire peut également être utilisé pour crypter les communications entre le TPM et le CPU.
On parle donc d’un problème de sécurité qui n’est pas facile à exploiter, mais qui existe, qui peut être reproduit (d’autant plus maintenant qu’il a été rendu public) et qui montre que même avoir une puce TPM ne garantit pas une sécurité totale. Et de ce fait, il est indispensable de prendre des mesures supplémentaires, comme par exemple verrouiller le démarrage du système avec un mot de passe.
Et il y a une recommandation qui est clé, par dessus toutes les autres : n’oubliez pas que nous n’aurons jamais une sécurité à 100 %. Que l’on ait une puce TPM, un VPN très sécurisé, etc., il ne faut pas négliger la sécurité. Surveiller nos ordinateurs, ne pas installer de logiciels d’origine douteuse, faire très attention à ce que l’on reçoit par mail… oui, on sait, ce sont les mêmes vieilles règles, mais leur importance est fondamentale pour se protéger des menaces.