Les vulnérabilités critiques Meltdown et Spectre des processeurs Intel et leurs impacts sur nos PC

Quand la firme INTEL ment comme un arracheur de dents émérite et met grandement en danger toute l’informatique et l’économie mondiales !

  • Mise à jour : 16/01/2018 – Spectre-Meltdown-Checker v.0.31 (en page 2)
  • Mise à jour : 23/01/2018 – Rétropédalage concernant les mises à jour du noyau Linux, du micro-code CPU Intel et du pilote GPU nVidia (en page 2)
  • Mise à jour : 26/01/2018 – Intel reconnaît enfin que la seule et vraie solution pour se prémunir efficacement contre Meltdown et Spectre est de remplacer ses puces CPU, mais pas gratuitement pour ses clients (en page 2)

Les vulnérabilités dans les microprocesseurs des ordinateurs modernes laissent fuiter nos mots de passe et toutes nos données… même sensibles !
Mais que fait la police des électrons pour arrêter les coupables ?

C’est le principe même de la stricte confidentialité de nos données très privées dont il est question. Nul besoin de surfer sur Internet pour se faire détrousser puisque l’exploitation des deux failles très critiques de sécurité que sont Meltdown et Spectre s’opèrent directement au cœur même de nos ordinateurs et des serveurs, c’est à dire à l’intérieur des microprocesseurs (CPU), qui exécutent les instructions et traitent les données des programmes, du fabricant Intel, voire d’autres fondeurs.

Alerte sécurité – Failles critiques Meltdown & Spectre dans les microprocesseurs modernes

♦ Késako que Meltdown et Spectre ?

C’est l’histoire incroyable d’un scandale technologique planétaire, dévoilé le 3/01/2018 au grand public par l’équipe du Zero Project de Google, mais qui a débuté quelques mois plus tôt en Juin 2017.

Ces bogues critiques de sécurité, appelés Meltdown et Spectre, ont été découverts par des chercheurs en sécurité du Zero Project de Google en collaboration avec des chercheurs universitaires et industriels de plusieurs pays. Ces deux vulnérabilités critiques combinées affectent pratiquement tous les ordinateurs modernes sur terre, y compris les smartphones, les tablettes, les ordinateurs et les serveurs de tous les fournisseurs en s’exécutant sur presque tous les systèmes d’exploitation.

Meltdown et Spectre exploitent les vulnérabilités critiques des microprocesseurs modernes à prédiction de branchement ou plus généralement à exécution spéculative. Ces vulnérabilités matérielles permettent aux programmes malveillants de dérober des données qui sont actuellement traitées sur l’ordinateur. Alors que les programmes ne sont généralement pas autorisés à lire les données d’autres programmes, un programme malveillant peut exploiter Meltdown et Spectre pour obtenir des secrets stockés dans la mémoire d’autres programmes en cours d’exécution. Cela peut inclure nos mots de passe stockés dans un gestionnaire de mots de passe ou un navigateur, nos photos et vidéos personnelles, nos mails, nos messages instantanés et même nos documents critiques.

C’est quoi l’exécution (calcul) spéculative ? Cette vulnérabilité critique de sécurité trouve son origine dans les efforts d’Intel pour accélérer la vitesse d’exécution des tâches avec l’introduction, il y a maintenant plusieurs années, du « calcul spéculatif » : le microprocesseur essaie d’anticiper la prochaine action en établissant des hypothèses et en effectuant les calculs concernés qui sont souvent stockés en mémoire. S’il a raison et que l’action a bien lieu, le processeur « gagne du temps ».
Bien sûr, il arrive que le calcul spéculatif se trompe. Quand les hypothèses sont fausses, il lui faut les abandonner et zapper des instructions exécutées spéculativement. Or, cette étape ne se fait pas parfaitement. Le processeur, dans le cadre de son calcul spéculatif, fait parfois venir des données dans la mémoire cache mais, lors de l’abandon, des traces de ces données peuvent être retrouvées et utilisées par des programmes malveillants.

  • PODCAST sur Spectre et Meltdown (à partir de 3 mn) – Décryptualité du 14/01/2018 par l’APRIL (Verbatim)
    Le podcast qui décrypte l’actualité des libertés numériques : Semaine 2, année 2018…
  • VIDÉO sur Meltdown/Spectre : le point sur les failles de sécurité – LesNumériques.com 12/01/2018
    Énorme affaire dans le milieu de la technologie depuis plusieurs jours, les failles de sécurité « Meltdown » et « Spectre » des microprocesseurs ont énormément fait parler d’elles. Alors que la tempête médiatique commence à se calmer un peu, il est temps de faire le point en vidéo…
  • Spectre et Meltdown : explication technique des 3 failles de sécurité et des mesures correctives (pour un public averti) – OVH.com 9/01/2018
    Depuis que les failles critiques de sécurité Meltdown et Spectre, découvertes sur les processeurs x86-64, ont été révélées publiquement la semaine dernière, le monde de l’IT s’affaire. Il s’agit d’abord de prémunir tous les équipements informatiques de l’exploitation de ces vulnérabilités. Puis de mesurer l’impact des correctifs sur les performances des systèmes, et d’expliquer la menace, de sorte à ce que les utilisateurs effectuent rapidement les mises à jour poussées par les éditeurs de systèmes d’exploitation et d’applications…
  • Alerte sécurité – Failles Meltdown & Spectre dans les microprocesseurs modernes – CyberMalveillance.gouv.fr 5/01/2018
    Le 3 janvier 2018, deux failles importantes de sécurité baptisées Meltdown et Spectre ont été révélées publiquement. Ces failles touchent à des niveaux variables les microprocesseurs de la très grande majorité des ordinateurs personnels (PC), mais aussi des serveurs informatiques, des tablettes, des téléphones mobiles (smartphones) dans le monde entier. Un attaquant qui parviendrait à exploiter ces failles pourrait avoir accès aux informations personnelles des utilisateurs des machines vulnérables (données personnelles, mots de passe, coordonnées bancaires…)…

♦ Qui a révélé Meltdown ?

Meltdown a été découvert indépendamment et rapporté par trois équipes

« MELTDOWN » annule-brise-casse l’isolation la plus fondamentale entre les applications utilisateur et le système d’exploitation. Cette attaque permet à un programme d’accéder à la mémoire, et donc aussi aux secrets, d’autres programmes et du système d’exploitation.

Meltdown – vulnérabilité de sécurité du CPU INTEL

Meltdown est une vulnérabilité matérielle affectant les microprocesseurs (CPU) Intel x86 et certains microprocesseurs basés sur ARM. Il permet à un processus malveillant de lire n’importe quelle mémoire du noyau, même s’il n’est pas autorisé à le faire.

Meltdown – vulnérabilité de sécurité du CPU

Meltdown affecte un très large éventail de systèmes informatiques. Au moment de la divulgation début Janvier 2018, cela incluait tous les matériels exécutant les versions les plus récentes et corrigées des systèmes d’exploitation iOS et macOS d’Apple, Windows de Microsoft, mais aussi GNU/Linux. En conséquence, de nombreux serveurs et services cloud ont été impactés, ainsi qu’une majorité potentielle d’appareils intelligents et d’appareils embarqués utilisant des processeurs ARM (appareils mobiles, smart TV et autres), y compris une large gamme d’équipements réseau.

Meltdown exploite une situation de concurrence (un défaut dans un système caractérisé par un résultat différent selon l’ordre dans lequel agissent les acteurs du système), inhérente à la conception de nombreux microprocesseurs modernes. Cela se produit entre l’accès à la mémoire et la vérification des privilèges pendant le traitement de l’instruction. En outre, combinée à une attaque par canal latéral du cache, cette vulnérabilité permet à un processus de contourner les contrôles de privilège normaux qui isolent le processus d’exploitation de l’accès aux données appartenant au système d’exploitation et aux autres processus en cours d’exécution. Cette vulnérabilité permet à un processus non autorisé de lire des données à partir de n’importe quelle adresse mappée à l’espace mémoire du processus en cours. Étant donné que l’instruction en pipeline se trouve dans les microprocesseurs concernés, les données provenant d’une adresse non autorisée seront presque toujours chargées temporairement dans le cache du CPU lors de l’exécution spéculative à partir de laquelle les données peuvent être récupérées. Cela peut se produire même si l’instruction de lecture d’origine échoue en raison de la vérification des privilèges et/ou si elle ne produit jamais un résultat lisible.

♦ Qui a révélé Spectre ?

Spectre a été découvert indépendamment et rapporté par deux personnes

« SPECTRE » annule-brise-casse l’isolation entre différentes applications. C’est une « faille matérielle » de conception, donc sans réel correctif possible ! Il permet à un attaquant de tromper les programmes sans aucune erreur, même ceux qui suivent les meilleures pratiques, en divulguant leurs secrets. En fait, les contrôles de sécurité desdites pratiques augmentent la surface d’attaque et peuvent rendre les applications plus sensibles à Spectre.

Spectre – vulnérabilité de sécurité du CPU INTEL et d’autres si affinité

Spectre est une vulnérabilité matérielle avec des implémentations de prédiction de branchement qui affectent les microprocesseurs modernes avec une exécution spéculative. Puisque l’exécution spéculative sur la plupart des microprocesseurs affecte le cache de données, les programmes qui acceptent les requêtes peuvent être trompés dans la lecture de données privées et, par conséquence, modifier l’état du cache de données. Un programme attaquant sur la même machine peut alors accéder au cache de données du CPU pour découvrir les données privées.

Spectre – vulnérabilité de sécurité du CPU

Spectre est une vulnérabilité qui force les programmes sur le système d’exploitation d’un utilisateur à accéder à un emplacement arbitraire dans l’espace mémoire du programme.

Au lieu d’une seule vulnérabilité facile à corriger, Spectre exploite toute une classe de vulnérabilités potentielles. Elles sont tous basées sur l’exploitation des effets secondaires de l’exécution spéculative, un moyen commun de cacher la latence de la mémoire et ainsi accélérer l’exécution dans les microprocesseurs modernes. Spectre se concentre en particulier sur la prédiction de branchement, qui est un cas particulier d’exécution spéculative. Contrairement à la vulnérabilité associée Meltdown divulguée en même temps, Spectre ne s’appuie pas sur une caractéristique spécifique du système de gestion et de protection de la mémoire d’un seul processeur, mais est une idée plus générale.

Cette vulnérabilité critique a été appelée Spectre car elle « est basée sur la cause première », l’exécution spéculative. Comme elle n’est pas facile à réparer, elle nous hantera pendant un temps plus que certain.

♦ C’est la chienlit chez INTEL et Consorts !

La faille critique Meltdown est actuellement considéré comme affectant principalement les microprocesseurs Intel fabriqués depuis 1995, oui vous avez bien lu depuis 1995 !, à l’exclusion des processeurs Atom et des processeurs Atanium d’avant 2013. Il pourrait permettre aux pirates de contourner la barrière matérielle entre les applications exécutées par les utilisateurs et la mémoire centrale de l’ordinateur. Meltdown nécessite donc une modification de la façon dont le système d’exploitation gère la mémoire à corriger, ce que les estimations de vitesse initiales prédisent pourraient faire perdre jusqu’à 30% de la vitesse d’exécution de la machine pour certaines tâches lourdes.

La faille critique Spectre affecte la plupart des microprocesseurs modernes fabriqués par divers fondeurs de semi-conducteurs, y compris Intel, AMD et ceux conçus par ARM, et permet potentiellement aux pirates de tromper des applications, sans signaler d’erreur, en leur donnant des informations secrètes. Spectre est plus difficile à exploiter pour les pirates, mais est également plus difficile à réparer et serait un plus gros problème à long terme.

Dans leur communication en direction de leurs utilisateurs et clients, les concepteurs et fabricants des microprocesseurs concernés essaient de minimiser au maximum les conséquences réelles qui vont impacter tous les utilisateurs de leurs CPU. Alors, ne soyons pas dupes !

Les vulnérabilités critiques Meltdown et Spectre des processeurs Intel

Prenons par exemple le concepteur et fondeur de puces INTEL

Juste après les révélations le 3/01/2018 par l’équipe du Zero Project de Google, INTEL tente de minimiser les conséquences désastreuse de cette découverte alors que son PDG (CEO) avait déjà mis à l’abri son très joli magot.
Et maintenant, revirement de position à 180° d’INTEL !
  • Intel admet enfin que les correctifs pour Meltdown et Spectre ralentissent les PC – BlogNT.fr 12/01/2018
    Dans un communiqué de presse publié hier, Intel a également confirmé qu’un ralentissement est effectivement l’un des effets des mises à jour Meltdown et Spectre, mais l’entreprise a tenté de minimiser l’impact sur les performances en soulignant qu’elle ne devrait pas être significative pour les utilisateurs moyens.
  • Spectre et Meltdown vous souhaitent une bonne année 2018 ! – LeTemps.ch 9/01/2018
    Les vulnérabilités informatiques avouées récemment par les producteurs de microprocesseurs représentent une révélation capitale. Elle met en évidence la fragilité du monde numérique sur lequel nous bâtissons notre société, estime Solange Ghernaouti, experte en cybersécurité.

♦ Que faire pour essayer de se protéger contre les failles critiques Meltdown et Spectre ?

Disons le très clairement, il n’y aura pas de vraies solutions avant quelques années ! Pourquoi ? Parce que le problème de base est lié à la conception même de l’architecture des microprocesseurs modernes d’Intel et d’autres.

Meltdown – vulnérabilité de sécurité du CPU

Dans ce contexte, Spectre et Meltdown auront eu l’avantage de nous rappeler l’impérieuse nécessité d’appliquer le principe de conception et de développement de solutions informatiques « secure by design » (de type libre à code source ouvert), et non « profit by design » (de type propriétaire à code source fermée), et de pouvoir vérifier, un peu à la manière des processus de validation des médicaments avant leur mise sur le marché et durant toute leur durée de vie, la qualité des éléments informatiques concernés.

Les bonnes pratiques à appliquer dès maintenant
Il faudra déployer régulièrement sur son ordinateur et/ou tablette et/ou téléphone tous les correctifs et patchs qui seront édités par les développeurs des distributions libres GNU/Linux et des systèmes d’exploitation propriétaires iOS, macOS et Windows pour essayer de limiter les effets néfastes de Meltdown et Spectre.

Il faudra aussi croiser les doigts des deux mains pour que ces deux vulnérabilités critiques des microprocesseurs Intel et Consorts ne soient pas trop exploitées par des individus et organisations malveillantes, maintenant que toute la documentation les concernant est sur la place publique.

Mais les premiers retours de certains utilisateurs, sous les différents systèmes d’exploitation, dont Ubuntu de Canonical et Windows de Microsoft, des premiers correctifs et patchs semblent plus que mitigés. Les systèmes pouvant carrément se bloquer dès le démarrage, les obligeant pour GNU/Linux à revenir à une version antérieur du noyaux Linux et pour Windows à réinstaller tout le système d’exploitation et les applications.

♦ Tester les failles critiques de sécurité des CPU INTEL & AMD

Ici sous une distribution GNU/Linux (Ubuntu et ses variantes-dérivées comme Linux Mint)

Spectre – vulnérabilité de sécurité du CPU

Plusieurs outils existent déjà sur le Web. Pour l’instant, j’ai choisi spectre-meltdown-checker (téléchargement ICI), un logiciel libre – vérificateur de vulnérabilité / atténuation pour Linux – sous licence GPL-3.0, actuellement en version 0.31 (régulièrement mis à jour). C’est un petit script (sans installation) qui se lance depuis un terminal et qui permet de tester les variantes des failles Spectre (2x) et Meltdown (1x).

Dans la capture d’écran ci-dessous de deux terminaux, nous avons un microprocesseur Intel Quad Core i7-720QM (Clarksfield – 1ère génération i7 de 2009) sous Ubuntu 16.04.3 LTS avec un noyau Linux 4.4.0-109 patché et sous Linux Mint 18.3 LTS avec un noyau 4.10.0-42 non patché. Dans les deux cas, c’est la dernière version 3.20180108.0~ubuntu16.04.2 du micro-code (CPU firmware) open source d’Intel qui est utilisée.

Pour Linux Mint 18.3 LTS, la mise à jour vers le noyau Linux 4.13.0-26 patché plante le système, obligeant à revenir en arrière soit à une version du noyau non patchée comme la 4.10.0-42 soit à une patchée telle que la 4.4.0-109. Après analyse du listing d’installation du noyau Linux 4.13.0-26 patché, le plantage lié à ce noyau sur mon système vient du fait que le pilote propriétaire nVidia series nvidia-340 (340.102-0ubuntu0-16.04.2 pour GeForce GT230M) n’a pas encore été mis à jour pour ce noyau patché. Le sera-t-il un jour, et si oui, quand ?

9/01/2018 : Les versions suivantes du noyau Linux dans Linux Mint ont été corrigées
  • 3.13 series (Linux Mint 17 LTS) : patché en 3.13.0-139
  • 3.16 series (LMDE) : patché en 3.16.51-3+deb8u1
  • 4.4 series (Linux Mint 17 HWE and Linux Mint 18 LTS) : patché en 4.4.0-108
  • 4.13 series (Linux Mint 18 HWE) : patché en 4.13.0-25
  • Veuillez utiliser le Gestionnaire de mises à jour de Linux Mint pour mettre à niveau votre noyau Linux.

Remarque : La série HWE (Hardware Enablement – support des dernières technologies matérielles) actuelle dans Linux Mint 18.3 LTS est passée du noyau Linux version 4.10 à la 4.13, mais elle pose problème pour certaines configurations matérielles, voir plus haut.

Nota bene : Les distributions GNU/Linux utilisent presque toutes des noyaux Linux modifiés et adaptés « Downstream » (en aval) et non les noyaux Linux d’origine « Upstream » (en amont). Alors pour les utilisateurs les moins expérimentés, il faut toujours utiliser les noyaux « Downstream » qui sont disponibles dans les dépôts officiels de logiciels de sa distribution ! Par exemple, le noyau Linux 4.4.0 est Upstream mais le 4.4.0-109 est Downstream, et le 4.13.0 est Upstream mais le 4.13.0-26 est Downstream, etc. La différenciation « Up/Down » entre eux se fait avec la présence du « – » et de ce qui suit.

Actuellement, même avec un noyau Linux patché, il n’y a que la faille critique « Meltdown » qui soit atténuée (« corrigée »). Les deux variantes de la faille critique de sécurité « Spectre » sont toujours là et bien présentes !

Spectre-Meltdown-Checker 0.31 : à gauche Ubuntu 16.04.3 LTS – à droite Linux Mint 18.3 LTS

23/01/2018 : Rétropédalage concernant les mises à jour du noyau Linux, du micro-code CPU Intel et du pilote GPU nVidia

Au moins les distributions Linux Mint et Ubuntu viennent de publier 2 nouvelles mises à jour, une du noyau Linux en version 4.13.0-31.34~16.04.1 et une du micro-code CPU Intel en version 3.20180108.0+really20170707ubuntu16.04.1. Les deux semblent annuler-corriger, pour raison de bogues majeurs, les 2 mises à jour précédentes. Et aussi, une nouvelle mise à jour du pilote propriétaire nVidia en version 340.104-0ubuntu0.16.04.1. On rétro-pédale donc de ~ubuntu-16.04.2 à ~ubuntu-16.04.1 !
Mais après tentative d’installation de la mise à jour du noyau Linux en version 4.13.0-31.34~16.04.1 le problème est malheureusement le même qu’avec la précédente version 4.13.0-26 patché. Donc, c’est toujours la galère.

Linus Torvalds, le père du noyau Linux, écrit entre autres choses (21/01/2018) : « Intel a-t-il vraiment l’intention de continuer cette merde architecturale ? … En l’état, vos correctifs (d’Intel) sont un tas d’ordures immondes… ».

♦ Alors, en attendant des jours meilleurs…

Si vous pensiez changer d’ordinateur et/ou de tablette et/ou de smartphone en 2018 ou 2019

Dans ce contexte de confiance zéro envers les fabricants de microprocesseurs, avec Intel en premier de cordée, prenez bien le temps de la réflexion avant de jeter sciemment votre argent par les fenêtres.
Une nouvelle architecture de microprocesseurs (CPU) corrigeant « On-Silicon » les failles critiques de sécurité Meltdown et Spectre ne devrait pas être disponible pour le grand public avant au moins 2 à 3 ans, sans compter les mises à jour associées et obligatoires des systèmes d’exploitation. De plus, renouveler tout le parc informatique, avec des CPU immunisés contre Meltdown et Spectre, des particuliers et des entreprises demandera au moins un dizaine d’années.

Pourquoi l’architecture des CPU Intel x86 et Consorts doit-il mourir ? Notre avenir axé sur le cloud doit dépendre de puces silicium open source et non propriétaires ! Peut-être que les méga-bogues de sécurité Meltdown et Spectre vont être à l’origine de changements de longue date de l’ADN central de l’industrie des semi-conducteurs et de la conception des architectures de puces.

26/01/2018 : Intel reconnaît enfin que la seule et vraie solution pour se prémunir efficacement contre Meltdown et Spectre est de remplacer ses puces CPU défaillantes, mais sûrement pas gratuitement pour ses clients !

Gardez vos sous durement gagnés bien au chaud sous votre couette, faites les mises à jour de sécurité – en fait des rustines pourries d’Intel – proposées par votre distribution, soyez encore plus prudent que d’habitude dans l’utilisation de votre ordinateur et d’Internet, et prenez votre mal en patience !

À suivre les péripéties de ce scandale technologique planétaire sans précédent…