Pour éliminer Spectre et Meltdown, vous devrez peut-être créer un tout nouveau type de processeur

Est-il vrai que Meltdown et Spectre sont trop fondamentaux pour publier un patch pour eux? Un expert le pense.




Comment identifier et corriger les erreurs comme Spectre et Meltdown? Cette question a été le sujet le plus chaud parmi les amateurs de microprocesseurs cette année. Lors de l'un des événements académiques majeurs de l'industrie, la conférence Hot Chips, les experts ont convenu qu'une solution finale au problème pourrait nécessiter - oui, encore plus de discussions.

Lors d'une réunion à Cupertino, le professeur Mark Hill de l'Université du Wisconsin a été invité à spéculer sur les conséquences d' attaques sur des canaux tiers ou d'attaques sur l'exécution spéculative de commandes sur des processeurs modernes fabriqués par ARM, Intel et autres. Il a énuméré des solutions telles que des cœurs spécialisés, vider le cache lors d'un changement de contexte et des idées commerciales telles que l'augmentation des frais pour les machines virtuelles exclusives.

Mais la vraie réponse, comme lui et d'autres intervenants l'ont dit, serait d'améliorer la collaboration entre les développeurs de logiciels et de matériel - et éventuellement le traitement complet des microprocesseurs d'aujourd'hui.

Comment toute l'industrie des puces a été un peu touchée


Des informations sur Meltdown et Spectre ont été divulguées de manière inattendue fin 2017, peu de temps avant que ces vulnérabilités n'aient dû être officiellement dévoilées au CES en janvier 2018. Ils ont été découverts par une équipe de recherche de vulnérabilités zero-day de Google, Google Project Zero. Les attaques profitent de la possibilité des microprocesseurs modernes, comme l'exécution spéculative de commandes, lorsque le processeur «devine» en fait quelle branche d'instructions exécuter. Paul Turner, ingénieur et directeur de la colonne vertébrale des développeurs Google qui ont assisté à la conférence, a déclaré qu'aucun des membres de Project Zero n'avait averti de l'ouverture de leurs collègues; ils l'ont appris avec tout le monde.

Pendant 20 ans, les développeurs de microprocesseurs ont cru que la mauvaise «supposition» rejetait simplement les données sans créer de risques pour la sécurité. Ils se sont trompés, ce qui a prouvé des attaques sur des chaînes tierces.

D'un point de vue pratique, cela signifie qu'un onglet de navigateur peut afficher le contenu d'un autre, ou qu'une machine virtuelle peut en regarder un autre. Cela a incité les fabricants de processeurs, en particulier Intel, ainsi que Microsoft, à publier des programmes correctifs ou des correctifs. C'est le moyen le plus efficace de protéger votre PC contre Spectre, Meltdown ou toute autre attaque ultérieure, comme Foreshadow.

Heureusement, la vérification de ces informations prend du temps - dans certains cas, beaucoup. NetSpectre, capable d'exploiter à distance la vulnérabilité Spectre, peut être utilisé pour pirater un service cloud ou une machine distante. Selon John Hennessey, développeur de microprocesseurs célèbre et membre du conseil d'administration d'Alphabet, d'une part, les données ne peuvent s'écouler pas plus rapidement que 1 bit par minute. En revanche, le temps moyen entre le piratage d'un serveur et la détection de ce fait est de 100 jours, a-t-il ajouté, ce qui pourrait donner le temps à la vulnérabilité de fonctionner.

Les processeurs Intel de prochaine génération ne seront probablement pas en mesure de réparer complètement le premier Spectre, comme l'a dit Hennessy, bien que des mesures pour remédier à cette lacune commenceront cet automne dans le nouveau processeur Xeon, Cascade Lake.



Patch ou remake?


ARM, Intel, AMD et d'autres géants de l'industrie peuvent résoudre le problème en prenant les mesures nécessaires assez rapidement, a ajouté Hill. Mais pour résoudre complètement le problème, des changements plus fondamentaux peuvent être nécessaires, a-t-il déclaré.

"À long terme, la question est de savoir comment décrire correctement ce processus afin d'éliminer potentiellement complètement le problème", a déclaré Hill. «Ou nous devrons la traiter comme des crimes que nous essayons seulement de restreindre.»

L'exécution spéculative de commandes est l'une des raisons pour lesquelles le microprocesseur, et donc le PC, ont réalisé des ventes record, a déclaré John Masters, participant à la conférence, architecte de systèmes informatiques chez Red Hat. Mais une telle implémentation était considérée comme une «boîte noire magique», a-t-il dit, sans poser de questions pertinentes de la part des utilisateurs ou des clients. Ce génie est également sorti de la bouteille. Éliminez l'exécution spéculative - et cela ralentira le processeur de vingt fois, a déclaré Hill.

Parmi les solutions proposées par Hill, il y a l'isolement de l'élément de prédiction de branche, l'ajout de randomisation et la mise en œuvre d'une protection améliorée de l'équipement. Une solution pourrait être d'ajouter des modes d'exécution plus lents et plus sûrs; pour d'autres, la séparation du mécanisme d'exécution des commandes entre «noyaux rapides» et «noyaux sûrs». Il a également proposé des solutions d'affaires, parmi lesquelles l'augmentation du coût des machines virtuelles - au lieu de partager les ressources d'équipement entre plusieurs machines virtuelles, un fournisseur de cloud pourrait fournir un accès exclusif. Enfin, Hill a noté que des attaques comme Spectre pouvaient également conduire à une relance des accélérateurs: une logique à usage fixe optimisée pour une seule tâche et ne reposant pas sur des spéculations.

Mais la solution fondamentale à ce problème serait une refonte complète de l'architecture, a déclaré Hill. L'architecture d'un ordinateur détermine la façon dont le processeur exécute un ensemble d'instructions de programme à l'aide de dispositifs arithmétiques, de dispositifs à virgule flottante et autres. Les puces d'aujourd'hui ont été conçues pour répondre aux exigences du modèle d'origine. Mais si un modèle architectural de base a un défaut fondamental, a-t-il dit, il est peut-être temps pour un nouveau modèle. En d'autres termes, Spectre et Meltdown ne sont pas des bogues, mais des défauts dans la conception de puces modernes, ce qui peut nécessiter un nouveau modèle.

En conséquence, les participants à la conférence se sont mis d'accord sur des vérités simples, telles que le fait que l'équipement doit être développé, en gardant à l'esprit le logiciel, et vice versa - et les deux parties devraient renforcer la sécurité. «Il arrive souvent que les développeurs de matériel créent une sorte de machine merveilleuse, et nous arrêtons d'en parler, ou les développeurs de logiciels disent - eh bien, c'est du matériel, pour moi quelque chose à ce sujet. Il est temps de l'arrêter », a déclaré Masters.

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


All Articles