Rebleed peut faire fuir la mémoire du noyau des processeurs Intel à environ 219 octets par seconde et avec une précision de 98 %. L’exploit peut extraire la mémoire du noyau des processeurs AMD avec une bande passante de 3,9 Ko par seconde. Les chercheurs ont déclaré qu’il était capable de localiser et de divulguer le hachage du mot de passe racine d’un ordinateur Linux à partir de la mémoire physique en environ 28 minutes lors de l’exécution des processeurs Intel et en environ six minutes pour les processeurs AMD.
Retbleed fonctionne en utilisant un code qui empoisonne essentiellement l’unité de prédiction de branche sur laquelle les processeurs s’appuient pour faire leurs suppositions. Une fois l’empoisonnement terminé, ce BPU fera des prédictions erronées que l’attaquant pourra contrôler.
“Nous avons découvert que nous pouvions injecter des cibles de branche qui résident dans l’espace d’adressage du noyau, même en tant qu’utilisateur non privilégié”, ont écrit les chercheurs dans un article de blog. “Même si nous ne pouvons pas accéder aux cibles de branche à l’intérieur de l’espace d’adressage du noyau – se brancher à une telle cible entraîne une erreur de page – l’unité de prédiction de branche se mettra à jour en observant une branche et supposera qu’elle a été légalement exécutée, même si c’est à un adresse du noyau.
Intel et AMD répondent
Intel et AMD ont répondu par des avis. Intel a confirmé que la vulnérabilité existe sur les processeurs de la génération Skylake qui ne disposent pas d’une protection connue sous le nom de spéculation indirecte améliorée (eIBRS) en place.
“Intel a travaillé avec la communauté Linux et les fournisseurs de VMM pour fournir aux clients des conseils d’atténuation des logiciels qui devraient être disponibles à la date de divulgation publique d’aujourd’hui ou vers cette date”, a écrit Intel dans un article de blog. “Notez que les systèmes Windows ne sont pas affectés étant donné que ces systèmes utilisent par défaut la spéculation indirecte restreinte à la branche (IBRS), qui est également l’atténuation mise à la disposition des utilisateurs de Linux. Intel n’est pas au courant que ce problème soit exploité en dehors d’un environnement de laboratoire contrôlé.
AMD, quant à lui, a également publié des conseils. “Dans le cadre de ses travaux en cours pour identifier et répondre aux nouvelles vulnérabilités de sécurité potentielles, AMD recommande aux fournisseurs de logiciels d’envisager de prendre des mesures supplémentaires pour se prémunir contre les attaques de type Spectre”, a écrit un porte-parole dans un e-mail. La société a également publié un livre blanc.
Le document de recherche et le billet de blog des chercheurs expliquent les conditions microarchitecturales nécessaires pour exploiter Retbleed :
Intel. Sur Intel, les retours commencent à se comporter comme des sauts indirects lorsque le Return Stack Buffer, qui contient les prédictions de cible de retour, est en sous-capacité. Cela se produit lors de l’exécution de piles d’appels profonds. Dans notre évaluation, nous avons trouvé plus d’un millier de ces conditions qui peuvent être déclenchées par un appel système. Le prédicteur de cible de branche indirecte pour les processeurs Intel a été étudié dans des travaux antérieurs.
DMLA. Sur AMD, les retours se comporteront comme une branche indirecte quel que soit l’état de leur pile d’adresses de retour. En fait, en empoisonnant l’instruction de retour à l’aide d’un saut indirect, le prédicteur de branchement AMD supposera qu’il rencontrera un saut indirect au lieu d’un retour et prédira par conséquent une cible de branchement indirect. Cela signifie que tout retour que nous pouvons atteindre via un appel système peut être exploité – et il y en a des tonnes.
Dans un e-mail, Razavi a ajouté : « Retbleed est plus qu’un simple contournement de retpoline sur Intel, en particulier sur les machines AMD. AMD va en effet publier un livre blanc présentant Branch Type Confusion basé sur Retbleed. Essentiellement, Retbleed oblige les processeurs AMD à confondre les instructions de retour avec les branches indirectes. Cela rend l’exploitation des rendements très triviale sur les processeurs AMD.
Les atténuations auront un coût que les chercheurs ont évalué entre 12% et 28% de frais de calcul supplémentaires. Les organisations qui s’appuient sur des processeurs concernés doivent lire attentivement les publications des chercheurs, d’Intel et d’AMD, et s’assurer de suivre les conseils d’atténuation.
Cette histoire est apparue à l’origine sur Ars Technica.