web-dev-qa-db-fra.com

Les mises à jour d'Intel Firmware / Microcode qui rendent les processeurs «immuns» aux deux spectres et fondus?

Récemment, Intel a réclamé ce qui suit n communiqué de presse (accent ajouté):

Santa Clara, Calif., 4 janvier 2018 - Intel a développé et émise rapidement des mises à jour Pour tous les types de systèmes informatiques basés sur Intel - y compris les ordinateurs personnels et les serveurs - Rendez ces systèmes à l'abri des deux exploits (appelé "Spectre" et "Meltdown") rapporté par Google Project Zero. Intel et ses partenaires ont fait des progrès significatifs dans Déploiement mises à jour comme des correctifs logiciels et mises à jour du microprogramme.

Intel a déjà publié des mises à jour pour la majorité des produits du processeur introduits au cours des cinq dernières années. À la fin de la semaine prochaine, Intel s'attend à avoir émis des mises à jour de plus de 90% des produits de processeur introduits dans les cinq dernières années. De plus, de nombreux fournisseurs de systèmes d'exploitation, fournisseurs de services de cloud public, fabricants de périphériques et autres ont indiqué qu'ils ont déjà mis à jour leurs produits et services.

n autre communiqué de presse plus récent a réitéré cela (accent ajouté):

Au début de décembre, nous avons commencé à distribuer des mises à jour de micrologiciels Intel à nos partenaires OEM. Pour les processeurs Intel introduits au cours des cinq dernières années, nous nous prévoyons de délivrer des mises à jour pour plus de 90% d'entre elles en une semaine et le reste d'ici la fin du mois de janvier. Nous continuerons à émettre des mises à jour pour d'autres produits par la suite. Nous sommes satisfaits de ces progrès, mais reconnaissons qu'il y a beaucoup plus de travail à faire pour soutenir nos clients.

Il semble qu'ils prétendent avoir développé des mises à jour du micrologiciel pour leurs transformateurs qui empêchent d'une manière ou d'une autre, des attaques de fusion et de spectres de travailler, et elles sont distribuées à travers différents fournisseurs.

Cependant, je trouve cette réclamation vague et peu convaincante.

Existe-t-il des mises à jour du micrologiciel/microcode Intel CPU qui, partiellement ou totalement, prévenir l'effondrement et le spectre? Si oui, comment y parvient-ils et comment affecte-t-il la performance?


Plus d'info:

Lors de la recherche ultérieure, il apparaît que la mise à jour "du micrologiciel" peut désigner une mise à jour de microcode. Toujours pas de vrais détails sur ce que cette mise à jour accomplit cependant.

De Rapport de bogue Debian: Intel-MicroCode: Mises à jour à venir pour Meltdown/Spectre :

On dit que Intel publiera des mises à jour du microcode (partiellement?) Atténuer certains des effets de la fusion et du spectre.


Intel a déjà publié plusieurs mises à jour, mais toutes afaik.

Ces mises à jour de microcode ont peu d'impact jusqu'à ce que les changements de noyau pour activer les nouvelles MSR sont déployés. Mais ils gâchent avec des sauts conditionnels et de Lfence.

Quoi qu'il en soit, téléchargez un ensemble partiel et non officiel de mises à jour instable pour fermer le bogue. Plusieurs transformateurs sont toujours manquants. J'attends bientôt une sortie officielle d'Intel, j'espère avec des mises à jour pour tout.

Tout le monde devrait rechercher des mises à jour du micrologiciel, les bons fournisseurs habituels les ont déjà sortis, ou les auront à la fin de la semaine prochaine.

8
Alexander O'Mara

Intel libérera des correctifs pour tous les processeurs qui ne sont pas âgés de plus de 5 ans. La plupart de ces correctifs seront fournis dans la semaine prochaine, le reste jusqu'à la fin de janvier 2018.

Ils ont également publié cela PDF et cela devrait répondre à toutes les autres questions concernant ces correctifs.


TL; DR:

Atténuation pour:

Vérifiez les limites BYPASS (= SPECTER): Modifications logicielles
Injection de la cible de branche (= SPECTER): Modifications du logiciel et mise à jour du microcode
Charge de cache de données de voyous (= Meltdown): Les systèmes d'exploitation doivent être corrects pour l'instant, mais les processeurs plus récents "disposent d'un support matériel" pour atténuer.


Une citation abrégée du papier blanc suit. J'ai souligné les parties, qui concernent votre question:

Vérifier les limites BYPASS APPASSEMENT

Pour la méthode de bypass de vérification des limites, la stratégie d'atténuation de Intel est axée sur les modifications logicielles. L'atténuation du logiciel que Intel recommande d'insérer une barrière pour arrêter la spéculation dans les endroits appropriés. En particulier, l'utilisation d'une instruction LFence est recommandée à cette fin. Des instructions sérialisées, ainsi que l'instruction LFence, cesseront des instructions plus jeunes de l'exécution, même de manière spéculativement, avant que les instructions plus anciennes ont pris la retraite, mais Lfence est une meilleure solution de performance que d'autres instructions de sérialisation. Une instruction LFence insérée après une vérification des limites empêchera les opérations plus jeunes d'exécuter avant que la vérification liée ne se retire. Notez que l'insertion de LFence doit être faite judicieusement; S'il est utilisé trop libéralement, la performance peut être compromise de manière significative.

L'analyse d'Intel du noyau Linux par exemple n'a trouvé qu'une poignée d'endroits où l'insertion de LFence est requise, ce qui entraîne un impact minimal des performances.] ==Aucun commentaire sur Windows/MacOS

Attachement d'injection ciblée de la branche

Pour la méthode d'injection ciblée de la branche, deux techniques d'atténuation ont été développées. Cela permet à un écosystème logiciel de sélectionner l'approche qui fonctionne pour leurs objectifs de sécurité, de performances et de compatibilité. La première technique introduit une nouvelle interface entre le processeur et le logiciel système. Cette interface fournit des mécanismes permettant à un logiciel système d'empêcher un attaquant de contrôler les prévisions de la branche indirecte de la victime, telles que rincer les prédicteurs de la branche indirecte au moment opportun pour atténuer de telles attaques. [...] Cette stratégie d'atténuation nécessite à la fois un logiciel système mis à jour, ainsi qu'une mise à jour de microcode à charger pour prendre en charge la nouvelle interface pour de nombreux processeurs existants.

La deuxième technique introduit le concept d'un "trampoline de retour", également appelé "retpoline". Essentiellement, le logiciel remplace les instructions de saut et d'appel indirects avec une séquence de code qui inclut la saisie de la cible de la branche en question sur la pile, puis d'exécuter une instruction de retour (RET) pour passer à cet emplacement, car les instructions de retour peuvent généralement être protégées en utilisant cette méthode. Cette technique peut fonctionner mieux que la première technique de certaines charges de travail sur de nombreux processeurs d'Intel actuels. [...] pour les processeurs Intel® Core ™ de la génération Broadwell et, plus tard, cette stratégie d'atténuation de retpoline également Nécessite une mise à jour du microcode à appliquer pour que l'atténuation soit pleinement efficace.

Atténuation de la charge de cache de données voyous

Pour la méthode de charge de cache de données de voyous, Le logiciel du système d'exploitation peut s'assurer que les pages privilégiées ne sont pas mappées lors de l'exécution du code de l'utilisateur Pour protéger contre les pages privilégiées.

Cette approche de base de la table à double page a été proposée auparavant comme une atténuation des attaques de canal latéraux sur l'adressage de noyau de la mise en page de la randomisation (Kaslr) dans le papier "Kaslr est mort: Long Live Live Kaslr1" et s'appelait Kaiser. Cette approche atténue également la charge de cache de données de voyous. Intel a travaillé avec divers fournisseurs de système d'exploitation pour permettre une approche de la table à double page dans leurs systèmes d'exploitation. Un système d'exploitation mettant en œuvre cette atténuation de la table à double page peut souhaiter tirer parti de la fonctionnalité du contexte de processus (PCID) sur les processeurs qui le supportent. PCID peut réduire considérablement le coût de performance des flushès TLB causées par le rechargement fréquent de CR3 pendant les transitions de mode utilisateur/superviseur.

Les futurs processeurs Intel auront également une prise en charge du matériel pour atténuer la charge de cache de données voyou.


De plus, le PDG d'Intel, Brian Krzanich a apparemment parlé à une partie de celle-ci lors de sa notnote de CES 2018.

https://youtu.be/rLJ9ZB74G_U?T=3545


Qu'est-ce que cela signifie pour moi comme utilisateur final?

  1. Votre machine a-t-elle un processeur Intel?

    1. Non? Obtenez des mises à jour de votre système d'exploitation OS/VM et de votre navigateur. Recherchez des patchs par AMD ou ARM. Si vous n'en avez pas non plus, gardez vos yeux ouverts, si votre fournisseur apparaît dans le "est également affecté" -List.
    2. Oui! Obtenez les patchs des sources officielles. Mettez également à jour votre système d'exploitation. Vous devriez être bien alors. Peut-être que cela peut être fait en une étape. Faites cela dès que les patchs sont disponibles, une nouvelle onduleuse pourrait apparaître demain.
5
Tom K.