IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Sept nouvelles variantes de Meltdown et Spectre ont été découvertes par des chercheurs en sécurité
Intel ne se montre pas inquiet

Le , par Stéphane le calme

431PARTAGES

14  0 
Au début de l'année, un ensemble d'attaques utilisant les capacités d'exécution spéculatives des processeurs modernes hautes performances a été révélé. Les attaques ont été nommées Meltdown et Spectre. Depuis lors, de nombreuses variantes de ces attaques ont été publiées. Parallèlement, diverses techniques d'atténuation de risque ont été créées pour permettre aux logiciels, systèmes d'exploitation et plateformes d'hyperviseur de se protéger contre ces attaques.

Rappel

Meltdown est une vulnérabilité matérielle découverte exclusivement dans les microprocesseurs Intel x86 qui permet à un processus non autorisé l'accès privilégié à la mémoire. La vulnérabilité ne semble pas affecter les microprocesseurs AMD.Un code Common vulnerabilities and Exposures : CVE-2017-5754 a été émis.

Spectre est une vulnérabilité matérielle de certaines implémentations de la prédiction de branchement, qui affecte les microprocesseurs modernes dotés de l'exécution spéculative ; cette vulnérabilité permet de récupérer des informations potentiellement sensibles en forçant un programme à accéder à des zones arbitraires de l'espace mémoire qui lui est alloué. Deux identifiants de Common Vulnerabilities and Exposures (CVE) liés à Spectre, CVE-2017-5753 et CVE-2017-5715, ont été émis.

Spectre est une vulnérabilité qui permet de faire en sorte qu'un programme accède à des emplacements arbitraires de la mémoire vive allouée à celui-ci. Un attaquant peut lire le contenu de la mémoire accédée ainsi, ce qui peut potentiellement lui permettre d'obtenir des données sensibles.

Le rapport sur Spectre décrit une classe de vulnérabilités potentielles. Elles sont toutes basées sur l'exploitation des effets secondaires de l'exécution spéculative, un moyen de masquer la latence de la mémoire et donc d'accroître la vitesse d'exécution des microprocesseurs modernes. Plus précisément, Spectre concerne la prédiction de branchement, qui est un aspect de l'exécution spéculative. Contrairement à Meltdown, à laquelle Spectre est associée du fait de la simultanéité de leurs découvertes, Spectre ne s'appuie pas sur une fonction spécifique de la gestion et du système de protection de la mémoire d'un seul processeur, mais est un concept plus général.

L’histoire n’est pas encore à son dernier chapitre

Une équipe de recherche, comprenant des chercheurs à l'origine de la découverte de Meltdown, Spectre et des attaques associées Foreshadow et BranchScope, a publié un nouveau document révélant d'autres attaques dans les familles Spectre et Meltdown. Le résultat ? Sept nouvelles attaques possibles. Certaines peuvent être atténuées par des techniques d'atténuation connues, mais d'autres non. Cela signifie que des travaux supplémentaires sont nécessaires pour protéger les systèmes vulnérables.

Les chercheurs ont entrepris une analyse systématique des techniques impliquées dans les exploits de Spectre et de Meltdown, et c'est ainsi que les nouvelles variantes ont été découvertes.

L'un des exploits récemment découverts utilise les clés de protection (PKU) d'Intel, et Peter Bright explique:

Les clés de protection introduites avec Skylake permettent à une application de marquer des morceaux de mémoire avec une clé à quatre bits. Les applications configurent le processeur pour qu'il utilise une clé de protection particulière et, pendant ce temps, toute tentative d'accès à la mémoire étiquetée avec une clé différente générera une erreur. Encore une fois, quelques nanosecondes de spéculation peuvent se produire entre la création d’un accès invalide (accès à la mémoire avec une clé de protection incohérente) et le signalement de l’erreur, permettant la fuite des informations à protéger.


Ceci, et un autre exploit tirant parti des MPX (Memory Protection eXtensions) d’Intel, sont tous deux liés à Meltdown, mais il en existe cinq autres qui sont liés à Spectre.

Au total, cinq scénarios de prédiction erronés différents ont été identifiés (quatre basés sur des prédicteurs de branche, un basé sur les mémoires stockées étant momentanément ignorées). Sur les quatre attaques de prédicteur de branche, chaque attaque peut être utilisée soit contre le même espace adresse, soit contre un autre, et elle peut être utilisée contre la même branche ou une branche associée. Cela crée 16 variantes basées sur un prédicteur de branche ainsi que l'attaque basée sur un store. Jusqu'à présent, toutes les combinaisons n'ont pas encore été testées, mais plusieurs nouvelles attaques de style Spectre sont décrites dans le document. Ils utilisent diverses combinaisons du prédicteur exploité, de l'adresse attaquée et de l'espace d'adressage attaqué.

En particulier, il a été démontré que l’une des variantes des attaques Spectre d’origine avait une applicabilité supérieure aux derniers processeurs d’AMD par rapport à celle connue jusqu’à présent; de même, l'attaque s'est également révélée efficace contre les processeurs ARM.


Les vendeurs en ont été informés

L’équipe de recherche a déclaré avoir communiqué toutes ses conclusions aux trois fournisseurs de processeurs dont ils avaient analysé les processeurs, mais que seuls ARM et Intel avaient reconnu leurs conclusions.

En outre, l’équipe de recherche a découvert que certaines mesures d’atténuation déjà appliquées par les fournisseurs n’étaient pas parvenues à arrêter les sept nouvelles attaques, même si elles auraient dû l’être, du moins en théorie. Ils fournissent au tableau suivant les résultats de leurs tests des mesures d’atténuation existantes.

Intel, semble-t-il, n'est pas inquiet. En réponse aux affirmations de l'équipe de recherche, Intel a fourni la déclaration suivante, suggérant que les mesures d'atténuation testées par les chercheurs n'avaient peut-être pas été appliquées correctement :

Citation Envoyé par Intel
Les vulnérabilités décrites dans le présent document peuvent être entièrement résolues en appliquant les techniques d’atténuation existantes pour Spectre et Meltdown, y compris celles précédemment décrites ici, et ailleurs par d’autres fabricants de puces. La protection de la clientèle reste une priorité essentielle pour nous et nous remercions les équipes de l’université de technologie de Graz, de imec-DistriNet, de la KU Leuven et du College of William and Mary pour leurs recherches continues.
Source : PoC (au format PDF)

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de emixam16
Membre chevronné https://www.developpez.com
Le 06/03/2019 à 14:45
D'un côté si il a fallu 20 ans pour trouver le problème, c'était pas si mal conçu que ça à la base.
Pas systématiquement.

Dans les cas de Spectre/Meltdown/Foreshadow/Spoiler, ces failles sont effectivement relativement balèzes (même si pas non plus exceptionnelles) et c'est compréhensible qu'elles aient mis du temps à être découvertes.

Mais des failles critiques, qui tiennent très longtemps dans le systèmes sont courantes. Voici deux exemples:
- La faille WinRar découverte récemment (https://www.developpez.com/actu/2479...-utilisateurs/) est très bête. Elle exploite une faille "bête" dans un format très peu utilisé (.ace). Et comme winrar ne prend pas en compte l'extension, en renommant simplement le fichier en .rar, je peux l'exploiter très facilement et compromettre une machine.
- L'idée derrière la faille HeartBleed était très basique aussi (principe expliqué en images par xkcd ici https://xkcd.com/1354/).

En résumé, qu'une faille n'ait été trouvé qu'après très longtemps ne veut pas dire que le logiciel était bien sécurisé... Juste qu'aucun chercheur en sécurité n'a regardé au bon endroit... Et vu le nombre d'endroits à regarder c'est compréhensible.
9  0 
Avatar de defZero
Membre extrêmement actif https://www.developpez.com
Le 01/11/2019 à 22:38
@phil995511
Sauf que à ma connaissance pour mener ce type d'attaques il faut être physiquement présent sur une machine vulnérable dont les Bios / OS n'ont pas été patchés...
Tout le problème est là justement.
Les vulnérabilité découvertes dans les micro-archi Intel (et pour certaines même chez ARM/AMD) peuvent être exploités à "distances", puisqu'elles permettes de passer les barrières Mémoire/Processus mis en place par les OS pour empêcher les opérations d'écritures/lectures/exécutions sur une architecture à mémoire partagé.
Typiquement avec la bonne payload lancer sur un serveur cloud que ce soit dans un conteneur ou une VM, avec processeur Intel, il est possible de lire/écrire/exécuter des registres/buffers/instructions et leurs valeurs, sans que ce soit détectable.
De même une attaque par JS permettrait d'échapper à la sandbox mis en place par le navigateur est d'écouter en temps réelle tous ce qui passerait par le processeur.
Et ça, que la machine est été patché ou pas, puisque des dire même d'Intel, étant des bugs lié à la micro-architecture des processeurs, ce n'est pas "patchable".
La porté des attaques peut tout au plus être atténué, ce qui semble convenir à Intel ...moins à ses clients.

Intel de leur côté prétendent que la désactivation de l'Hyper Treading n'est pas nécessaire.
Tu m'étonne.
Tu voit une boite comme Intel venir expliquer à ses clients et leurs dires :
"Écouter, on s'est tromper il faudrait peut-être mieux désactiver l'HyperThreading sur nos processeurs en fin de compte.
Par contre vous allez perdre d'office 20% de performances et ne comptez pas sur un remboursement de notre part, même si c'est un vis cacher.
Parce qu'on à fait des erreurs OK, mais on ne va tout de même par rembourser tout le monde pour qu'ils aillent chez la concurrence".

Se mettraient-ils avec de telles affirmations potentiellement en porte à faux vis-à-vis de leurs clients au risque de les voir se retourner contre eux ?!
Là tu considère qu'Intel ne prend pas ses clients pour des pigeons, or ils démontrent tous les jours le contraire.
La preuve, ils continuent de vendre leurs processeurs/contrôleurs à des prix exorbitant, alors que ceux-ci sont toujours bugués et que les bios/UEFI des CM ne sont toujours pas systématiquement patchés en sortie d'usine (au bon vouloir des fabricants quoi ).
C'est un peu comme AMD qui demande à ses client de patcher une CM neuve pour pouvoir faire fonctionner leurs derniers Processeur "Compatible" .
Ça va 5 minute, mais ce n'est absolument pas normale.
Et quand une nouvelle faille apparait (ou qu'une fuite à lieu, parce que les Meltdown/Spectre c'est après 6 mois qu'on en a entendu parlé, alors qu'elles sont présentes dans tous les Processeurs Intel sortie depuis 95), leur premier réflexe a toujours été d'abord de le nier, puis d'en minimiser l'impact et enfin après un temps certain (pour ne pas dire un certain temps) de sortir des séries de patch bâclé qui font perdre X% de performances et qui finalement ne résolve rien puisque le problème est physique et ne peut être patché.

Finalement ils finissent par s'en sortir en promettant que la prochaine génération de processeurs sera exempt de failles, ce qui n'est pour l'instant toujours pas vrai.
Bref bel exemple de j'm'en bats les couillisme vis à vis de ses clients.

Au rythme auquel ils trouvent de nouvelles failles/vulnérabilités sur les CPU's ces derniers temps, si cela continue ainsi, on ne pourra bientôt plus rien faire de nos PC si ce n'est les recycler
C'est bien parce que l'on a pas vraiment le choix qu'ils ce permettent d'avoir ce comportement.
Si la masse de leurs clients avaient ne serait-ce qu'une architecture de replie, ils seraient plus avenant, or ce n'est pas le cas.
En l’état il n'existe aucunes architectures alternatives pour le grand publique.
L'industrie c'est orienté vers l'Intel x86 depuis l'IBM PC, finalement on va en subir les conséquences collectivement un jour ou l'autre.

En passant, j’attends encore les sanctions de l'Europe pour abus de position dominante d'Intel sur le x86 et divers autres IPs en leurs possessions.
9  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 13/12/2019 à 10:50
Ou, autrement dit : il faut déjà un accès quasi totale sur la machine pour pouvoir faire des mauvaises manipulations. Je pense que si quelqu'un à ring-0, il ne s'embêtera pas à compromettre la tension
Sauf à essayer de faire cramer le CPU par exemple.

Un accès "ring-0" et le niveau de privilège "NT authority" ...c'est la même chose ?
Non, le privilège NT authority correspond à des droits sous Windows. Il s'agit de comptes système avec des droits plus étendus que les comptes administrateurs, qui ne sont censés être utilsés que par les services Windows.

Le Ring 0 ne concerne que les CPU Intel/Amd. Le ring 0 étant le mode CPU avec le plus de privilèges, le ring 3 celui à moindre privilège (les ring 1 et 2 existent mais ne sont pas utilisés). Du code en Userland tournera en ring 3, du code Kernelland tournera en partie en ring 0 quand nécessaire. Le principe étant que le ring 0 restreint les accès matériel/mémoire/fonction CPU de modification de comportement pour le code en ring3. Quand un code en userland demande un accès qu'il n'a pas, l'OS va le gérer et lui attribuer ou non le droit (exemple, ajout de mémoire dans l'espace d'adressage pour un malloc : autorisé - accès à l'espace mémoire d'un autre processus : refus d'accès).

Les failles dont il est sujet ici évoque la possibilité d'accéder à des zones normalement accessibles qu'en ring0 par du code tournant en ring 3 par la mauvaise utilisation du cache par l’exécution spéculative. Les corrections effectuées sur les OS consistent à forcer l'invalidation des caches au moment opportun, ou de ne pas utiliser celui-ci. Voilà pourquoi ces patchs ont un impact sur les performances.

Les CPU Intel et AMD réagissent différemment car même si ils sont compatibles du point de vue code machine, brochage, ils ne sont pas câblés pareil à l’intérieur et ne font pas forcément exactement les mêmes choses pour arriver au même but. Le nombre d'attaques auxquelles les deux architectures sont sensibles est assez proche (il a été évoqué 5 pour Amd et 7 pour Intel). Et rien n'empêche de supposer que les CPU Amd peuvent être sensibles à des attaques auxquelles les CPU Intel ne le serait pas.

Un processeur non x86/Amd64 gèrera différemment avec par exemple un mode superviseur avec tous les droits et un mode utilisateur avec droits restreints. Un Windows 10 ARM n'aura donc pas de ring 0.

Mais pour moi le plus gros danger vient du Intel Management Engine qui contient un Minix un tourne ring -2 voire -3. (ring -1 étant l'hyperviseur pour les fonctions de virtualisation, au dessus du ring 0). A noter qu'il existe l'équivalent chez AMD le AMD Platform Security Processor (PSP) dont on entend moins parler mais qui n'est pas forcément mieux :
In September 2017, Google security researcher Cfir Cohen reported a vulnerability to AMD of a PSP subsystem that could allow an attacker access to passwords, certificates, and other sensitive information; a patch was rumored to become available to vendors in December 2017
6  0 
Avatar de CaptainDangeax
Membre expérimenté https://www.developpez.com
Le 13/03/2019 à 11:34
Je suis allé il y a 2 semaines à une conférence sur les hardware trojans. Le conférencier a présenté 2 cas d'étude, mais qui sont extrèmement complexes à mettre en oeuvre et qui de plus requièrent un accès physique au matériel et qui sont en fait faciles à détecter. Donc ce vecteur d'attaque n'est pas utilisé.
Je reste persuadé qu'on risque bien plus par des attaques de social engineering, même si ça n'excuse pas Intel.
4  0 
Avatar de eldran64
Membre extrêmement actif https://www.developpez.com
Le 05/11/2019 à 9:59
Juste pour la petite info, désactivé l'hyperthreading sur un core I3 de 10ème génération, c'est perdre un peu plus de 30% de performance et non 20%.
Ça a fait partie des arguments qui m'ont poussé à passer sur une plateforme AMD à la place d'Intel.
4  0 
Avatar de eldran64
Membre extrêmement actif https://www.developpez.com
Le 12/12/2019 à 9:40
Les processeurs Intel sont vraiment daubés niveau archi.

La différence entre Intel et AMD c'est qu'AMD corrige ses failles de sécu d'une génération à l'autre.
Avec Intel, les failles de sécu ne sont pas corrigés et en plus comme leur archi datent de Mathusalem, le nombre de génération de processeurs touché par ses failles est très important.

Bref, avec Intel, il faut fuir comme la peste leur proco.
4  0 
Avatar de Ryu2000
Membre extrêmement actif https://www.developpez.com
Le 12/12/2019 à 10:18
Citation Envoyé par Christian Olivier Voir le message
La possibilité de modifier la tension et la fréquence des processeurs Intel à partir de l’OS permet d’utiliser des utilitaires dédiés à « ;l’overclocking ;». Cependant, il s’avère finalement que les individus malveillants peuvent également tirer profit de cette fonctionnalité.
Dès que t'ajoutes une fonctionnalité ça créer des failles potentiels, du coup la phrase “La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer.” fonctionne quand on parle de technologie.

Citation Envoyé par Stérilux Voir le message
ses failles ne sont jamais mis en avant comme ce l'est pour intel.
Les processeurs Intel sont touché par plus de failles, les correctifs font perdre plus de performance aux processeurs Intel qu'aux processeur AMD, certaines failles qui touchent Intel, AMD, ARM sont plus difficilement exploitable avec les processeurs AMD et ARM, il y a plus de processeurs Intel que de processeurs AMD.

Citation Envoyé par Stérilux Voir le message
ses failles ne sont jamais mis en avant comme ce l'est pour intel.
Quand une faille touche AMD et ARM c'est dit dans l'article, Intel est touché par plus de failles que les autres.
AMD's CPUs, including the latest Ryzen and Epyc processors, are immune to:
  • Meltdown (Spectre v3)
  • Spectre v3a
  • LazyFPU
  • TLBleed
  • Spectre v1.2
  • L1TF/Foreshadow
  • SPOILER
  • SpectreRSB
  • MDS attacks (ZombieLoad, Fallout, RIDL)
  • SWAPGS
Il y a 7 attaques Meltdown et Spectre, les processeurs AMD sont affectés par 5 de ces failles, les processeurs Intel par 7 de ces failles.

===
Intel va revenir en force, il y a un gros plan qui a été lancé, la feuille de route prévoit une gravure en 1.4 nm d'ici 2029.
Si tout ce passe bien, dans 10 ans Intel va commercialisé des processeurs intéressants.
4  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 23/02/2019 à 8:35
J'imagine qu'un tel problème ne serait jamais resté ignoré aussi longtemps sur du open-hardware.
Le problème étant matériel, il faut :

  • remédier au problème de conception.
  • quid du matériel déjà fourni avec le défaut ? il faut le changer, ou accepter la mitigation, réduisant le problème mais ne le solutionnant pas à 100 %, générant un ralentissement global de fonctionnement.


Ca ne peut de toute façon pas se régler en 15 jours.

Les gens ayant acheté un CPU avec la faille peuvent toujours essayer de faire jouer le vice caché.
3  0 
Avatar de phil995511
Membre éprouvé https://www.developpez.com
Le 01/11/2019 à 18:21
Sauf que à ma connaissance pour mener ce type d'attaques il faut être physiquement présent sur une machine vulnérable dont les Bios / OS n'ont pas été patchés... Intel de leur côté prétendent que la désactivation de l'Hyper Treading n'est pas nécessaire. Se mettraient-ils avec de telles affirmations potentiellement en porte à faux vis-à-vis de leurs clients au risque de les voir se retourner contre eux ?!

Au rythme auquel ils trouvent de nouvelles failles/vulnérabilités sur les CPU's ces derniers temps, si cela continue ainsi, on ne pourra bientôt plus rien faire de nos PC si ce n'est les recycler
4  1 
Avatar de eldran64
Membre extrêmement actif https://www.developpez.com
Le 12/12/2019 à 10:33
Citation Envoyé par Stérilux Voir le message
J'avoue ne jamais avoir aimé intel mais quand même, tu le dis toi même, AMD corrige d'une génération à l'autre mais ses failles ne sont jamais mis en avant comme ce l'est pour intel.

Perso je regrette les CPU d'IBM et feu Motorola.
Il y a un effet "accumulation" et "sous le feux des projecteurs". Intel longtemps été le numéro 1 et a vendu des palettes de processeurs. Donc dès que les 1ère grosses failles sont apparus tout le monde en a parlé. Ensuite quand les autres sont apparus le focus est resté chez Intel.
AMD aussi a été décrié mais comme cela touchait moins de gen chez eux car leur archi est récente ET mise à jour, disons que c'est passé largement mieux.
3  0