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 !

L'architecture de tous les CPU Intel remise en question après la découverte de SPOILER
Une nouvelle faille difficile à corriger par voie logicielle

Le , par Christian Olivier

428PARTAGES

15  0 
Des chercheurs du Worcester Polytechnic Institute aux États-Unis et de l’université de Lübeck en Allemagne ont découvert une nouvelle vulnérabilité critique baptisée SPOILER qui affecte toutes les puces Intel depuis la première génération Core jusqu’aux plus récentes « Kaby Lake refresh ». Ils décrivent Spoiler comme « une nouvelle approche permettant d’obtenir des informations sur les adresses mémoires physiques » en exploitant un mécanisme d’optimisation implémenté dans les processeurs modernes : l’exécution spéculative.


En principe, dans le cadre du fonctionnement normal d’un processeur prenant en charge l’exécution spéculative, les éléments spéculatifs incorrects sont ignorés et une charge de données non spéculative normale est effectuée, ce qui permet l’exécution de l’instruction, mais sans augmenter les performances. Le document indique que le problème principal avec SPOILER est la performance de désambiguïsation de la mémoire d’Intel, qui tente d’empêcher le calcul sur des données chargées par une tentative de spéculation incorrecte, son comportement prédictif étant la vulnérabilité réelle.

Cette nouvelle approche permettrait même, d’après eux, de « lancer des attaques déjà connues plus efficacement ou d’en concevoir de nouvelles ». Et pour cause, SPOILER serait capable de déterminer comment la mémoire virtuelle et la mémoire physique sont liées l’une à l’autre, en mesurant le temps de chargement et de stockage des opérations spéculatives effectuées par le processeur : en repérant des divergences dans le timing, il est possible pour un attaquant de déterminer la disposition de la mémoire, et à son tour de connaître les zones à attaquer.

Pour rappel, au cours des derniers mois, plusieurs vulnérabilités majeures affectant la majorité des processeurs disponibles sur le marché ont été découvertes, la plupart étant liées à leurs capacités d’exécution spéculatives. Elles affectent surtout les processeurs du fondeur américains Intel ainsi que certaines puces conçues par Arm et IBM, mais aussi, dans une moindre mesure cela dit, les CPU produits par AMD. Il a été démontré que certaines d’entre elles existent même depuis près de 20 ans.

Les plus connues sont : Meltdown, Spectre, BranchScope, Foreshadow, PortSmash et TLBleed. Ces exploits permettraient à un attaquant d’accéder en douce et de détourner différents types de données (mots de passe, clés cryptographiques…) sur un système sans être détecté ou arrêté par les outils de sécurité traditionnels. Les processeurs produits par Intel sont presque toujours les plus sensibles ou les seuls concernés par ces exploits.

SPOILER n’affecte vraisemblablement que les processeurs du fondeur de Santa Clara, les processeurs Arm et AMD analysés n’ayant à aucun moment présenté un comportement similaire lors de l’étude. Elle tire parti des tâches que le processeur entreprend pour déterminer à l’avance les futures commandes potentielles et gagner les précieuses millisecondes dont sont friands les amateurs de benchmarks au détriment de la sécurité des opérations. SPOILER serait quasiment impossible à corriger par voie logicielle, d’après les chercheurs.

Signalons au passage que les chercheurs de Google assurent désormais que tous les processeurs qui prennent en charge l’exécution spéculative resteront toujours sensibles aux diverses attaques par canal latéral, malgré les mesures d’atténuation qui pourraient être découvertes à l’avenir. D’après eux, pour véritablement remédier à tous les bogues actuels et futurs liés à Spectre et à la menace qu’ils représentent, les concepteurs de puces (Intel en tête de liste) doivent s’atteler à proposer de nouvelles architectures pour leurs microprocesseurs.


La firme de Santa Clara, qui a été informée depuis le 1er décembre 2018, a de son côté déclaré : « Nous nous attendons à ce que les logiciels puissent être protégés contre de tels problèmes en utilisant des techniques de développement résistantes aux attaques par canal latéral ».

Source : Publication des chercheurs (PDF)

Et vous ?

Qu’en pensez-vous ?

Voir aussi

PortSmash : une nouvelle faille critique qui affecte les CPU Intel exploitant l'Hyperthreading ou le SMT des CPU AMD pourraient aussi être touchés
AMD pourrait vendre plus de CPU serveur dédiés au cloud computing, après le scandale des vulnérabilités matérielles touchant surtout les CPU Intel
Sept nouvelles variantes de Meltdown et Spectre ont été découvertes par des chercheurs en sécurité, Intel ne se montre pas inquiet
Les processeurs Intel x86 souffriraient d'un défaut qui exposerait la mémoire noyau et impacterait surtout sur le marché serveur

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

Avatar de emixam16
Membre expérimenté 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 averti 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 éclairé 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 éprouvé 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 éprouvé 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 phil995511
Membre actif 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 éprouvé 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 
Avatar de LittleWhite
Responsable 2D/3D/Jeux https://www.developpez.com
Le 12/12/2019 à 22:06
Bonjour,

Je ne suis pas expert dans les failles, mais cela me semble bizarre. En réalité, les hackers qui s'intéressaient à la PS Vita au utilisée une technique similaire pour extraire des informations sensible d'une zone mémoire très protégée (permettant le chiffrement des données de la console et donc, protection anti copie et ainsi de suite).
Ici la conférence :
(à partir de la 20e minute.)

Le hacker en a fait un papier académique : https://arxiv.org/abs/1903.08102

Dans la conférence, il indique que si la tension n'est plus assez bonne, les transistors ne seront pas à la position attendue (ouvert/fermé) et du coup, le résultat est erroné.
Dans la vidéo de cette news, on voit un bit modifié dans le cas de la multiplication.

Je trouve (si je ne m'abuse pas) que ces deux travaux sont très proches et du coup, que l'attaque sur les CPU Intel :
  • ne sont pas nouvelles ;
  • ne sont pas spécifiques à Intel.


La vraie faille, c'est que l'OS puisse changer la tension du CPU et donc, si ce logiciel est non sécurisé, cela devient une opération réalisable par n'importe qui/n'importe quel programme.

Plundervolt nécessite des privilèges root étant donné que les logiciels qui permettent de modifier le vCore d’un processeur ont besoin d’un accès ring-0.
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, il ira directement installé un keylogger ou je ne sais quel autre programmes malveillants (ou copier directement les données intéressantes).
3  0