Les techniques de mitigation logicielles ciblant Spectre ne peuvent compenser les défauts de conception
Structurels des puces touchées, selon Google

Le , par Christian Olivier

354PARTAGES

12  0 
Un groupe de chercheurs travaillant pour Google affirme qu’il sera difficile d’éviter les bogues liés à Spectre à l’avenir, à moins que les CPU ne fassent l’objet d’une révision en profondeur. D’après eux, les techniques de mitigation basées sur les logiciels seules ne suffiront pas à empêcher l’exploitation de vulnérabilités matérielles de ce type, des solutions logicielles d’atténuation qu’ils considèrent, pour la plupart, comme incomplètes.


Il faut rappeler que c’est grâce à Google qu’on sait que les vulnérabilités critiques touchant les puces modernes, et probablement toute l’industrie des semi-conducteurs, affectent surtout les CPU x86 64 — bits d’Intel. Mais ces failles de sécurité touchent également les processeurs basés sur l’architecture ARM (Samsung, Qualcomm, MediaTek, Apple, Huawei…), l’architecture CPU mise au point par IBM et, dans une moindre mesure, les processeurs d’AMD.

Spectre correspond aux deux premières variantes — 1 (bounds check bypass) et 2 (branch target injection) — des vulnérabilités critiques découvertes par la firme de Mountain View et expose aux types d’attaques spécifiques qui y sont relatifs. Spectre brise la barrière entre les applications et permet à un attaquant d’obtenir, en toute discrétion, des informations sensibles sur des applications en cours d’exécution, même si elles sont protégées.

Les chercheurs de Google ont découvert que la temporisation du cache de données des processeurs modernes peut être utilisée de manière abusive pour récupérer illégalement les informations sur un ordinateur. Cette fonctionnalité est utilisée par la plupart des processeurs modernes pour optimiser les performances, mais elle peut également occasionner de graves problèmes de sécurité. Ils avaient réussi à démontrer que des attaquants peuvent tirer parti de cette fonctionnalité (connue aussi sous le nom d’exécution spéculative) pour exploiter des processus au niveau de l’espace utilisateur en contournant la MMU et lire le contenu de la mémoire du noyau d’un ordinateur qui en temps normal aurait dû leur être inaccessible.

Ce problème étant matériel, c’est-à-dire qu’il concerne la partie non reconfigurable des puces, il ne serait pas envisageable de recourir à un patch via microcode pour corriger toutes les variantes des différentes failles de sécurité révélées au cours des 14 derniers mois, notamment celles de Spectre. Pour remédier efficacement à ce problème, il faudrait soit recourir à une technique d’isolation de la table de correspondance, soit concevoir de nouveaux processeurs avec une architecture révisée en conséquence.

Dans un document distribué par ArXiv, les chercheurs de la filiale d’Alphabet 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 CPU doivent s’atteler à proposer de nouvelles architectures pour leurs microprocesseurs.


Intel a dit qu’il inclura des correctifs matériels pour des bogues matériels spécifiques et connus dans ses futures puces. Le problème, selon les chercheurs de Google, est que les bogues liés à Spectre sont considérés comme une classe à part entière, et large de surcroit, de vulnérabilités liées à l’exécution spéculative qui favorisent les attaques par canal latéral.

Les chercheurs ont proposé plusieurs solutions possibles, notamment la désactivation totale de la fonctionnalité d’exécution spéculative, l’atténuation précise de la temporisation et « ;le branchless masking ;». Ils ont fait remarquer que ces mesures d’atténuation ne sont pas sans poser de problèmes et qu’il est probable qu’il faille faire face à des pénalités au niveau des performances si elles venaient à être mises en œuvre.

Ils ont conclu en disant : : « ;Spectre porte peut-être trop bien son nom, car il semble destiné à nous hanter pendant longtemps ;», soulignant le fait que, depuis trop longtemps déjà, nous privilégions la performance et la complexité au détriment de la sécurité.

Source : Publication des chercheurs de Google (PDF)

Et vous ?

Qu’en pensez-vous ?

Voir aussi

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
PortSmash : une nouvelle faille critique qui affecte les CPU Intel exploitant l'Hyperthreading ou le SMT, des CPU AMD pourraient aussi être touchés
Microsoft publie des correctifs pour Foreshadow, une variante de Spectre, sur Windows 10 et Server 2016

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

Avatar de emixam16
Membre éprouvé 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 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 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 Ryu2000
Membre extrêmement actif https://www.developpez.com
Le 06/03/2019 à 14:07
Citation Envoyé par Christian Olivier Voir le message
Qu’en pensez-vous ?
C'est marrant que pendant 15 ou 20 ans aucun chercheur n'a trouvé ou publié quoi que ce soit et que d'un coup il y a Spectre, Meltdown, SPOILER.
Ça va être difficile pour Intel qui doit concevoir des nouvelles architectures de processeurs plus sécurisé.
Mais en comblant une faille tu peux très bien en créer 2 autres...

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.
1  0 
Avatar de andry.aime
Rédacteur/Modérateur https://www.developpez.com
Le 06/03/2019 à 14:38
« ;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 ;»
Donc intel se fout de ses clients?
1  0 
Avatar de abriotde
Membre expérimenté https://www.developpez.com
Le 07/03/2019 à 14:23
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.
Il y a aussi autres choses, avant on avait pas besoin d'exploiter des failles aussi complexes, il y en avait tellement d'autres. D'ailleurs les failles sont si complexe que très peu de malware les exploitent.
1) Les premières failles exploitées étaient celle du type buffer-overflow, du moins des faille logiciels.
2) Ensuite les logiciels devenant de plus en plus protégé et les anti-virus de plus en plus efficace, les pirates ont dû exploitées les failles plus bas niveau OS et BIOS au moins pour se cacher une fois une faille logiciel exploitée.
3) Aujourd'hui OS et Bios se sont énormément améliorés (UEFI à remplacé Bios) alors les chercheurs (et le pirates) ont été contraint de chercher des failles ailleurs. On est aujourd'hui descendu au niveau du processeur.

Une seul constante, c'est l'exploitation du social-engineering, autrement des failles humaines.
1  0 
Avatar de Jipété
Expert éminent sénior https://www.developpez.com
Le 18/05/2019 à 19:14
Citation Envoyé par Christian Olivier Voir le message
Toutefois, la génération de cette hypothèse erronée perturbe d’autres parties de la puce. L’approche principale consiste à modifier le cache en fonction de la valeur devinée, ce qui cause des différences de synchronisation subtiles (car il est plus facile de lire des données déjà en cache que des données qui ne le sont pas) qu’un attaquant peut mesurer. À partir de ces mesures, l’attaquant peut déduire la valeur estimée qui était en cache.
Moi, j'aimerais bien qu'on m'explique ce que j'ai mis en gras.

Et comment un attaquant s'y prendrait pour faire la différence entre 01010101 et 10101010, données qui devraient mettre environ le même temps pour être lues (données schématisées pour montrer l'idée, s'il s'agit de mots de 64 bits vous multipliez par 8).

Citation Envoyé par Christian Olivier Voir le message
L’attaque peut être réalisée aussi bien sur un ordinateur que sur le cloud.
Ah ouais ? Dans le cloud ? Depuis le garage avec un simple câble RJ45 pour attaquer le cloud ?

Restons sérieux 5 minutes : en labo, avec des sondes de tous les côtés piquées sur la carte-mère et en y passant des mois, peut-être qu'on trouverait un numéro de téléphone ou une adresse email, mais sinon, franchement, comment ça peut fonctionner ce genre d'attaque ?
Parce que ce n'est pas le tout que des données aient la faculté d'être devinées à cause de ce qui est décrit dans l'article, encore faut-il qu'il y ait quelque chose pour les récupérer, non ?
Puis les mettre en forme, et enfin les exploiter.

Je reste perplexe…
1  0 
Avatar de Ryu2000
Membre extrêmement actif https://www.developpez.com
Le 22/02/2019 à 14:31
Citation Envoyé par Christian Olivier Voir le message
Il faut rappeler que c’est grâce à Google qu’on sait que les vulnérabilités critiques touchant les puces modernes, et probablement toute l’industrie des semi-conducteurs, affectent surtout les CPU x86 64 — bits d’Intel. Mais ces failles de sécurité touchent également les processeurs basés sur l’architecture ARM (Samsung, Qualcomm, MediaTek, Apple, Huawei…), l’architecture CPU mise au point par IBM et, dans une moindre mesure, les processeurs d’AMD.
En ce moment Google recrute à fond chez Intel, Qualcomm, etc, pour créer ses propres processeurs.
On verra bien si Google fera mieux que les autres...
0  0 
Avatar de Steinvikel
Membre expérimenté https://www.developpez.com
Le 23/02/2019 à 7:30
Qu'en pensez vous ?
"soulignant le fait que, depuis trop longtemps déjà, nous privilégions la performance et la complexité au détriment de la sécurité." --> je n'aurais pas mieux dit.

J'imagine qu'un tel problème ne serait jamais resté ignoré aussi longtemps sur du open-hardware. J'ai grande foi en nos futurs RISC-V question sécurité. =)
0  0 
Avatar de cirle78
Membre régulier https://www.developpez.com
Le 23/02/2019 à 11:30
C'est vrai que depuis que spectre est sorti, je ne dors plus la nuit..... ;-)

Il y a des attaques revendiquées tous les jours par ce bug hard ;-)
0  2 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web