SWAPGS : Intel encore dans ses tares d'exécution spéculative |
————— 08 Août 2019 à 11h03 —— 18507 vues
SWAPGS : Intel encore dans ses tares d'exécution spéculative |
————— 08 Août 2019 à 11h03 —— 18507 vues
Depuis les fameux Spectre et Meltdown, nous avons appris que si les CPU - chez Intel en particulier - sont véloces, c'est parfois au détriment de la sûreté de nos données. En effet, de par un mécanisme appelé exécution spéculative, le processeur va lire et exécuter des instructions à l'avance, dans le but d'aller toujours plus vite. Sauf que si le bouzin est allé plus vite que la musique, il faut nettoyer les trace laissées derrière, et c'est là que le bât blesse.
Au niveau technique, c'est encore le prédicteur de branchement qui est en cause, utilisé conjointement à une instruction : SWAPGS (d'où le nom !). Utilisée lorsque le kernel reprend la main, cette dernière permet tout simplement de sauvegarder le contenu du registre GS afin de le remplacer par des informations utilisées par le kernel, en l'occurrence les adresses de la pile du noyau sur Linux. Sauf que, pour des raisons de performances également, tous les appels du noyau n'ont pas besoin de ces adresses : il y a donc une condition qui permet de vérifier si SWAPGS est nécessaire. Vous le sentez venir, la spéculation peut mener à une utilisation de l'ancien registre GS, et ainsi fuiter des données récupérables par canal auxiliaire par une application qui n'aurait que des droits utilisateurs limités, voire une machine virtuelle... La sauce Spectre habituelle !
Pour le moment, la preuve de concept élaborée par des chercheurs de Bitdefender n'a fonctionné que sur des CPU Intel, et seulement sur les versions 64-bit : de quoi remonter jusqu'à au moins Sandy Bridge. Un bon point pour AMD, qui communique par ailleurs sur une impossibilité d'exploitation de la faille sur son architecture, et pour cause : aucune spéculation n'est faite en interne sur la valeur du registre GS. Pour ce qui est des correctifs, tout est déjà en place dans Windows et Linux - la faille date d'un an, mais n'est révélée que dernièrement pour des raisons de sécurité, justement. Pour ce qui est des performances, Phoronix a testé au moyen d'un noyau Tux intégrant les correctifs, et les pertes s’élèvent à quelques pourcents : pas de quoi s'affoler... Mais c'est toujours ça de gagné pour la concurrence, Zen2 étant déjà remarquable sans cela. Il reste également la question de la correction d'Ice Lake à ce niveau, Intel n'ayant pas encore communiqué à ce sujet. Meltdown, un spectre qui n'en finit décidément plus de s'abattre sur les CPU bleus !
C'est ici pour swapper sa GS ?
Un poil avant ?RX 5700 XT customs : EVOKE et Red Devil (re)viennent aussi à la charge ! | Un peu plus tard ...Nouveaux Xeons : Cooper Lake, tu es déjà là ? |