Le défaut découvert réside dans l'absence de chiffrement sur les voies de communication (bus LPC) entre le CPU et le TPM externe au démarrage, permettant ainsi à un pirate de sniffer et de voler les clés de chiffrement. Bien que cette faille ne concerne apparemment que les TPM discrets, les utilisateurs de processeurs intégrant un TPM interne semblent à l’abri de cette menace, car les communications du TPM restent sécurisées à l'intérieur du processeur.
BitLocker, une fonction de sécurité intégrée à Windows, vise à protéger les données en chiffrant l'intégralité des volumes. Cette mesure de sécurité est conçue pour contrer les menaces de vol, d'exposition ou de manipulation de données provenant d'appareils perdus, volés ou hors service de manière inappropriée.
Lorsqu'un appareil est perdu ou volé, les données qu'il contient deviennent vulnérables à des accès non autorisés, que ce soit par l'utilisation d'outils d'attaque logicielle ou le transfert du disque dur vers un autre appareil. BitLocker intervient en restreignant l'accès non autorisé aux données, renforçant ainsi la protection des fichiers et du système. Cette mesure garantit l'inaccessibilité des données lorsque les appareils protégés par BitLocker sont hors service ou en cours de recyclage.
Pour une sécurité optimale, BitLocker s'associe au Trusted Platform Module (TPM), un composant matériel couramment intégré aux appareils Windows. Le TPM collabore avec BitLocker pour assurer l'intégrité de l'appareil lorsqu'il est hors ligne.
En complément du TPM, BitLocker peut imposer un verrouillage sur le processus de démarrage normal, exigeant de l'utilisateur qu'il fournisse un numéro d'identification personnel (PIN) ou qu'il insère un périphérique amovible contenant une clé de démarrage. Ces mesures de sécurité permettent une authentification multifactorielle, assurant que l'appareil ne peut démarrer ou sortir de l'hibernation qu'après la présentation du bon code PIN ou de la clé de démarrage appropriée.
Le Module de Plateforme de Confiance (TPM) est une norme internationale définissant un cryptoprocesseur sécurisé, c'est-à-dire un microcontrôleur dédié conçu pour renforcer la sécurité matérielle grâce à l'intégration de clés cryptographiques. Le terme peut également faire référence à une puce conforme à la norme ISO/IEC 11889. Dans le contexte du système d'exploitation Windows 11, l'implémentation du TPM 2.0 est une exigence. Microsoft a affirmé que cette mesure vise à renforcer la sécurité en prévenant les attaques de microprogrammes.
En ce qui concerne la série Raspberry Pi Pico, elle se compose de cartes minuscules, rapides et polyvalentes construites autour du RP2040, la puce de microcontrôleur phare conçue par Raspberry Pi au Royaume-Uni. Le Pico représente une étape importante pour la fondation Raspberry Pi, étant son premier microcontrôleur. Il offre ainsi aux utilisateurs un petit ordinateur abordable et convivial, idéal pour la programmation et la réalisation de projets électroniques.
L'interface LPC et son rôle dans l'abandon du bus ISA
La définition du LPC (Low Pin Count) englobe le protocole d'une interface électrique entre les composants de la carte mère. Cette interface ne spécifie aucun connecteur ou interface mécanique particulier. Initialement conçue comme une solution provisoire lors de l'abandon progressif du bus ISA, l'interface LPC assure la compatibilité logicielle avec un bus ISA, tout en minimisant le nombre de broches nécessaires sur le plan matériel.
L'objectif du LPC était de faciliter la transition de l'industrie vers des systèmes dépourvus d'héritage, signifiant ici l'absence de bus ISA. Le terme « Low Pin Count » (nombre réduit de broches) peut également être désigné par l'acronyme PPC, bien que sa signification précise ne soit pas définie.
L'interface LPC permet aux composants d'E/S de la carte mère, généralement regroupés dans une puce Super I/O, de migrer du bus ISA/X vers l'interface LPC. La spécification détaillée de cette interface décrit les transactions mémoire, E/S et DMA, utilisant l'horloge PCI à 33 MHz, en contraste avec le bus ISA qui fonctionnait à 8 MHz malgré son interface plus large.
Intel est à l'origine du développement du LPC, et la version de la spécification consultée date de 2002 sans mise à jour ultérieure. Cette spécification mentionne à plusieurs reprises le bus ISA, suggérant que le LPC pourrait avoir été envisagé comme une interface transitoire pendant la phase de compromis ISA / PCI, à l'époque où des emplacements d'extension ISA coexistaient avec des emplacements d'extension PCI sur les cartes mères.
À noter que l'interface LPC est réservée à la carte mère, n'utilisant ni connecteur ni fournissant d'emplacement d'extension. Enfin, le LPC peut être considéré comme une interface héritée dans le contexte du remplacement des bus ISA et PCI par l'interface PCIe. Le document de référence est la spécification de l'interface Low Pin Count (LPC), version 1.1, datant d'août 2002 (version initiale en 1998).
Les révélations inquiétantes du Youtubeur stacksmashing
La révélation du YouTubeur stacksmashing suscite des préoccupations majeures quant à la sécurité des données. Cette faille, démontrée en moins d'une minute avec un Raspberry Pi Pico bon marché, met en lumière une faiblesse fondamentale dans la conception de BitLocker, plus précisément dans la dépendance à un Trusted Platform Module externe dans certaines configurations.
Le processus d'exploitation de la faille a révélé que les voies de communication, connues sous le nom de bus LPC, entre le CPU et le TPM externe ne sont pas chiffrées au démarrage. Stacksmashing a ainsi pu intercepter les données cruciales lors de leur transfert entre les deux unités, permettant de voler les clés de chiffrement en seulement 43 secondes. Cette découverte soulève des préoccupations légitimes quant à la robustesse de BitLocker et à la protection des données sensibles.
Un point notable mis en avant par les avis est que cette vulnérabilité semble affecter principalement les TPM externes, tandis que les TPM intégrés dans les processeurs modernes d'Intel et d'AMD semblent offrir une meilleure sécurité en maintenant les communications du TPM à l'intérieur du processeur. Cela souligne l'importance de la distinction entre les différentes configurations matérielles dans l'évaluation des risques liés à BitLocker.
Les retours des utilisateurs témoignent d'une variété d'opinions et de préoccupations
Certains utilisateurs soulignent l'utilité potentielle de cette découverte dans le domaine de la récupération de données, offrant une alternative lorsque les utilisateurs ne peuvent pas obtenir leurs clés conventionnellement. Cependant, d'autres remettent en question la viabilité de cette approche dans la plupart des cas, mettant en évidence la complexité et les risques inhérents à de telles méthodes.
Une évaluation technique approfondie des raisons potentielles derrière les défaillances du TPM conduit à la proposition de solutions théoriques visant à minimiser les risques, notamment en lien avec les mises à jour du micrologiciel. En particulier pour BitLocker, il est conseillé de privilégier des options de sécurité solides, telles que l'utilisation de codes PIN, afin de renforcer la protection des données.
La révélation du YouTubeur stacksmashing souligne l'impératif pour les utilisateurs et les professionnels de la sécurité informatique de rester vigilants face aux vulnérabilités potentielles de leurs systèmes de chiffrement. La diversité des préoccupations et des approches adoptées par les utilisateurs dans la gestion de la sécurité de leurs données, souligne l'importance continue de l'éducation et de la sensibilisation aux meilleures pratiques en matière de sécurité informatique.
Source : Vidéo
Et vous ?
Quel est votre avis sur ce sujet ?
Comment la vulnérabilité découverte par le YouTubeur stacksmashing pourrait-elle affecter la sécurité des données pour les utilisateurs de Windows 10 Pro et Windows 11 Pro utilisant BitLocker ?
Avez-vous plus de details sur la faille de conception exploitée par stacksmashing dans les systèmes dotés d'un TPM externe, et quel rôle ce TPM joue-t-il dans certaines configurations de BitLocker ?
Voir aussi :
Raspberry Pi Pico : Comment démarrer rapidement en langage C/C++ avec le kit officiel (SDK), un billet blog de f-leb
Raspberry Pi Pico - Session de débogage avec la sonde dans Visual Studio Code, un billet blog de f-leb
Raspberry Pi Pico - Fabriquer un programmateur SWD pour la Pi Pico avec... une autre Pi Pico, un billet blog de f-leb