Ce que nous avons appris sur la sécurité Intel ME ces dernières années: 7 faits sur le mystérieux sous-système



Image: Unsplash

Au cours des deux dernières années, la technologie Intel ME a été examinée de près par les chercheurs. Cette technologie est entourée d'une aura de mystère - malgré le fait qu'elle a accès à presque toutes les données de l'ordinateur et que son compromis vous permet de prendre le contrôle total de la machine, la documentation officielle et les manuels d'utilisation du fabricant n'existent tout simplement pas. Par conséquent, les chercheurs du monde entier doivent comprendre indépendamment le travail du sous-système.

Nous étudions Intel ME depuis quelques années, et voici ce que nous avons réussi à découvrir sur ce mystérieux sous-système à ce stade.

Des vulnérabilités dans ME peuvent se fissurer même un ordinateur arrêté


Fin 2017, lors de la conférence Black Hat Europe, les chercheurs de Positive Technologies Mark Ermolov et Maxim Goryachy ont évoqué une vulnérabilité dans Intel Management Engine 11 qui pourrait permettre aux attaquants d'accéder à la plupart des données et des processus sur l'appareil. Une description détaillée du problème que nous avons publié dans notre blog sur le hub

Une vulnérabilité dans Intel ME a permis l'exécution de code arbitraire. Cela met en péril toutes les technologies telles que Intel Protected Audio Video Path (PAVP), Intel Platform Trust Technology (PTT ou fTPM), Intel BootGuard, Intel Software Guard Extention (SGX) et bien d'autres.

Vous pouvez utiliser le mécanisme de débogage JTAG pour intercepter des données dans ME


En exploitant l'erreur dans le module bup, les chercheurs ont pu activer un mécanisme appelé PCH red unlock, qui permet un accès complet à tous les appareils PCH, pour une utilisation via la chaîne DFx, c'est-à-dire en utilisant JTAG. L'un de ces appareils est le cœur ME lui-même. Cela a permis de déboguer du code fonctionnant sur ME, de lire la mémoire de tous les processus et du noyau, et de gérer tous les périphériques à l'intérieur de PCH. Les calculs ont montré que dans les ordinateurs modernes, il y a environ 50 appareils internes au total, seul ME y a un accès complet et le processeur principal n'en a qu'un sous-ensemble très limité.

Ce niveau d'accès signifie également que tout attaquant exploitant cette vulnérabilité, contournant la protection logicielle traditionnelle, peut mener des attaques même lorsque l'ordinateur est éteint.

JTAG peut être activé dans la version mobile de ME


Intel TXE est la version mobile de ME. La vulnérabilité INTEL-SA-00086 vous permet d'activer JTAG pour le sous-système noyau. Les chercheurs de Positive Technologies ont développé le JTAG PoC pour la plate-forme Gigabyte Brix GP-BPCE-3350C. Cet utilitaire peut être utilisé pour activer JTAG pour Intel TXE.

Le sous-système peut être désactivé en utilisant le mode non documenté


Dans une étude de l'architecture interne de la 11e version d'Intel Management Engine (ME), Maxim Goryachy et Mark Ermolov ont pu détecter un mécanisme qui désactive cette technologie après avoir initialisé l'équipement et démarré le processeur principal. Ils ont constaté que bien qu'il soit impossible de désactiver complètement ME sur les ordinateurs modernes, il existe un mode non documenté dans le sous-système appelé High Assurance Platform (HAP). Les chercheurs ont pu détecter un bit HAP spécial, dont l'installation met Intel ME en mode d'arrêt à un stade précoce du chargement.

Le nom High Assurance Platform est un programme de plateforme de confiance associé à la US National Security Agency (NSA). Une présentation avec une description du programme est disponible en ligne. Ce mécanisme a probablement été introduit à la demande des services du gouvernement américain, qui cherchent à réduire la probabilité de fuite de données par les canaux secondaires.

Des failles de sécurité ME compromises sur MacBook


En juin de cette année, Apple a publié des mises à jour couvrant la vulnérabilité dans ME sous le code CVE-2018-4251. Cette fois, l'erreur était contenue dans le composant Intel ME Manufacturing Mode - il s'agit d'un mode de fonctionnement de service conçu pour configurer, configurer et tester la plate-forme finale au stade de la production. Ce mode vous permet de définir des paramètres de plateforme critiques stockés dans la mémoire à écriture unique (FUSES). Il doit être éteint avant la mise en vente de l'équipement et expédié à l'utilisateur.

Ni ce mode, ni ses risques potentiels ne sont décrits dans la documentation publique d'Intel. Un utilisateur ordinaire n'est pas en mesure de le désactiver par lui-même, car l'utilitaire pour le gérer à partir du package Intel ME System Tools n'est pas officiellement disponible.

Cette vulnérabilité permet à un attaquant disposant de droits d'administrateur d'obtenir un accès non autorisé aux parties critiques du micrologiciel, d'y écrire une version vulnérable d'Intel ME et, grâce à son fonctionnement, de se fixer secrètement sur l'appareil. À l'avenir, il pourra prendre le contrôle total de l'ordinateur et mener des activités d'espionnage, sans la moindre probabilité d'être détecté.

Les chipsets Intel vulnérables sont utilisés dans le monde entier, des ordinateurs portables domestiques et professionnels aux serveurs d'entreprise. Une mise à jour précédemment publiée par Intel n'excluait pas la possibilité d'exploiter les vulnérabilités CVE-2017-5705, CVE-2017-5706 et CVE-2017-5707, car si un attaquant a un accès en écriture à la région ME, il peut toujours enregistrer la version vulnérable de ME et exploiter la vulnérabilité en elle.

Intel corrige deux fois les mêmes erreurs dans ME


Début juillet, Intel a publié deux avis de sécurité ( SA-00112 et SA-00118 ), qui décrivaient les correctifs du micrologiciel Intel Management Engine. Les deux bulletins de sécurité décrivent des bogues qui permettent à un attaquant d'exécuter du code arbitraire sur le processeur PCH interne (Minute IA).

Ces erreurs sont similaires à celles que les experts en sécurité de Positive Technologies ont découvert en novembre 2017 ( SA-00086 ). Cependant, l'histoire ne s'arrête pas là, et Intel a ensuite publié de nouveaux correctifs de vulnérabilité dans ME.

CVE-2018-3627, décrit dans SA-00118, est marqué dans le bulletin comme une erreur logique (ce n'est pas un débordement de tampon), ce qui conduit à l'exécution de code arbitraire. Pour son fonctionnement, l'attaquant a besoin d'un accès local, tandis que la vulnérabilité mentionnée dans SA-00086 ne peut être exploitée localement qu'en cas d'erreur de configuration système faite par l'OEM. Cette condition rend la vulnérabilité plus dangereuse.

Dans le cas de CVE-2018-3628 (décrit dans SA-00112), les choses sont encore pires. Une vulnérabilité dans le processus AMT du micrologiciel du moteur de gestion conduit à l'exécution de code à distance, et l'attaquant n'a pas besoin d'avoir un compte administrateur AMT, comme lors de l'utilisation de CVE-2017-5712 à partir de SA-00086.

Intel décrit cette erreur comme «Buffer Overflow in HTTP Handler», ce qui suggère la possibilité d'exécuter du code à distance sans autorisation. Il s'agit du pire scénario que tous les utilisateurs de la plate-forme Intel craignent.

Il existe des moyens d'ouvrir les clés de chiffrement ME


Sur cette "aventure" Intel ME n'a pas pris fin. Déjà à l'automne, la société a dû corriger une autre erreur dans le sous-système, ce qui a conduit à la divulgation des clés de chiffrement dans Intel ME - elle a été découverte par les chercheurs de Positive Technologies Dmitry Sklyarov et Maxim Goryachiy.

Intel ME (Management Engine) utilise MFS (soi-disant abréviation de ME File System) pour stocker les données. Les mécanismes de sécurité MFS utilisent activement des clés cryptographiques. Les clés de confidentialité sont utilisées pour garantir la confidentialité des données stockées dans MFS, et les clés d'intégrité sont utilisées pour contrôler l'intégrité. Les données placées dans MFS, selon le degré de signification, sont divisées en deux catégories et sont protégées par différents jeux de clés. Les clés Intel sont utilisées pour les données les plus sensibles et les clés non Intel sont utilisées pour tout le reste. Ainsi, quatre clés sont utilisées: clé d'intégrité Intel, clé d'intégrité non Intel, clé de confidentialité Intel et clé de confidentialité non Intel.

L'exploitation d'une vulnérabilité découverte précédemment par Mark Ermolov et Maxim Goryachy vous permet d'obtenir les quatre clés et de compromettre complètement les mécanismes de sécurité MFS. Intel a publié une mise à jour pour supprimer cette vulnérabilité. La valeur de SVN (Secure Version Number) a été augmentée - cette étape consistait à mettre à jour toutes les clés et à ramener la sécurité MFS au niveau prévu. L'obtention de clés MFS pour le firmware ME mis à jour (avec une nouvelle valeur SVN) devrait être impossible.

Cependant, déjà en 2018, les chercheurs de Positive Technologies ont découvert la vulnérabilité CVE-2018-3655, décrite dans Intel-SA-00125. L'essence du problème est que les clés non Intel dépendent de la valeur de SVN et du secret immuable sous-jacent du sous-système. Et ce secret peut être obtenu si vous utilisez le débogage JTAG, qui peut être activé à l'aide de la vulnérabilité précédente. Connaître le secret de base du sous-système vous permet de calculer les deux clés non Intel - et tout cela est déjà dans la nouvelle version du firmware.

Ainsi, un attaquant peut calculer la clé d'intégrité non Intel et la clé de confidentialité non Intel pour le firmware avec la valeur SVN mise à jour, et donc compromettre les mécanismes de sécurité MFS qui s'appuient sur ces clés.

Et ensuite


Il n'y a pas si longtemps, nous avons publié sur le blog une analyse détaillée de la vulnérabilité CVE-2018-4251 du MacBook. Maintenant, Mark Ermolov et Maxim Goryachy à la conférence HiTB 2018 parleront de la façon dont un attaquant peut l'exploiter pour mener une attaque. Nous discuterons également des méthodes de protection - par exemple, en utilisant un utilitaire spécialisé de nos experts.

Source: https://habr.com/ru/post/fr430132/


All Articles