Quantcast
Channel: Next - Flux Complet
Viewing all articles
Browse latest Browse all 1069

Sinkclose : tous les processeurs AMD sont vulnérables à l’insertion de code malveillant

$
0
0
Pass VIP
Sinkclose : tous les processeurs AMD sont vulnérables à l’insertion de code malveillant

AMD a un sérieux problème de sécurité sur les bras : des chercheurs ont trouvé le moyen de détourner un mécanisme de ses processeurs pour rendre des malwares pratiquement impossibles à déloger. La vulnérabilité, d’une sévérité de 7,5 sur 10 (CVSS 3.1), n’est atténuée que par l’obligation pour le pirate de disposer d’un accès à l’espace noyau sur la machine à infecter.

À la DEF CON qui se tient actuellement à Las Vegas, deux chercheurs ont présenté samedi leur travail sur les processeurs AMD. Enrique Nissim et Krzysztof Okupski, tous deux de la société de sécurité IOActive, ont débusqué l’année dernière un gros problème dans toutes les puces de l’entreprise remontant au moins jusqu’en 2006.

Même si la faille, estampillée CVE-2023-31315, ne peut être réellement exploitée que lorsqu’on possède déjà un accès à l’espace noyau du système, elle peut permettre l’installation d’un malware presque impossible à déloger. Une zone privilégiée pour un bootkit, capable de se relancer à tous les démarrages et que même un formatage complet du disque dur et une réinstallation du système d’exploitation ne peuvent effacer.

Des correctifs ont déjà été diffusés ou le seront bientôt, mais pas pour tout le monde.

Un mécanisme de compatibilité dans les processeurs AMD

La faille est complexe et réside dans une caractéristique – jugée « obscure » par les chercheurs – dans les processeurs AMD. Il faut d’abord évoquer TSeg. Il s’agit d’une protection mise en place par AMD pour protéger les systèmes d’exploitation d’écrire dans une zone spécifique de la mémoire, réservée au System Management Mode (SMM). Cette zone est connue sous le nom de SMRAM, pour System Management Random Access Memory. Le SMM a une grande importance : il effectue de nombreuses tâches en arrière-plan, vérifie l’alimentation, le refroidissement et autres. Son code est exécuté avant même que le système d’exploitation ne démarre.

Vient ensuite TClose. Cette fonction a été ajoutée il y a des années par AMD dans ses puces pour permettre aux systèmes d’exploitation de rester compatibles avec des mécanismes plus anciens pouvant se servir des mêmes adresses en mémoire que la SMRAM. Quand elle est activée – ce qu’elle est par défaut – les adresses mémoire sont « remappées » vers cette zone, en cas de besoin.

Que permet la faille ? De rediriger les données souhaitées vers cette zone protégée. Et par « données souhaitées », il faut comprendre un code malveillant, dont les instructions vont être remappées vers le System Management Mode, via TClose. De là, le code obtient non seulement un emplacement très protégé, mais il acquiert également les privilèges les plus élevés, supérieurs à ceux du noyau ou de l’hyperviseur, selon le type de configuration.

La faille a été nommée « Sinkclose » par les chercheurs, un mélange de « Sinkhole » – en référence à une faille du SMM trouvée chez Intel en 2015 – et TClose, la fonction dans laquelle réside le problème.

Un ordinateur « bon à jeter »

Enrique Nissim et Krzysztof Okupski ont indiqué à Wired qu’ils avaient décidé de se plonger dans l’architecture des processeurs AMD il y a deux ans. Ils estimaient en effet qu’elle n’avait pas été suffisamment examinée, l’attention étant surtout tournée vers Intel. Mais ayant observé des gains réguliers de parts de marché, particulièrement dans le domaine des entreprises et des centres de données (via la gamme Epic), ils ont creusé.

Enrique Nissim a notamment indiqué qu’il avait lu la page de la documentation d’AMD contenant la faille « un millier de fois ». « Et c’est à la mille et unième fois que je l’ai remarquée », a-t-il ajouté.

Sur la gravité de leur découverte, Krzysztof Okupski propose un scénario : « Imaginez que des pirates d’un État-nation ou quiconque veuille persister sur votre système. Même si vous effacez votre disque dur, il sera toujours là. Il sera presque indétectable et presque impossible à réparer ».

Presque ? Selon le chercheur, c’est faisable en théorie. Il faudrait établir une connexion physique à une certaine partie des puces mémoire de l’ordinateur via un outil spécifique (reprogrammeur SPI Flash) et procéder à un examen approfondi de la mémoire pour vérifier la présence d’un code malveillant. Un processus long et laborieux, qu’Okupski résume ainsi : « En fait, vous devez jeter votre ordinateur ».

Des droits élevés à l’entrée

Un seul facteur empêche la faille d’être considérée comme critique, mais il est de taille : le ou les pirates doivent avoir déjà établi un accès au système d’exploitation et se débrouiller pour obtenir des droits d’accès au noyau. Pour rappel, nous avons évoqué ces droits dans une description du fonctionnement des solutions de sécurité, dans le cadre de la panne mondiale CrowdStrike.

Ce n’est pas simple, mais loin d’être impossible. Les deux chercheurs indiquent ainsi que des vulnérabilités de ce type sont découvertes presque tous les mois dans Windows et Linux. En outre, si l’on parle de pirates soutenus par des États-nations, alors ils « ont déjà des exploits de noyau pour tous ces systèmes », affirme Enrique Nissim.

Posséder une telle faille ne fait cependant pas tout. Selon le type de machine que l’on souhaite viser, il sera peut-être nécessaire d’obtenir un accès physique à la machine. Dans le cas d’un centre de données par exemple, l’opération peut se révéler extrêmement délicate, la sécurité étant intensément scrutée.

Délicate, mais le jeu en vaut la chandelle. Les pirates, après avoir obtenu l’accès, peuvent implanter leur code malveillant dans le processeur AMD et tenter de partir sans laisser de traces. Si l’intrusion n’a pas été remarquée, le code malveillant laissé en SMRAM sera virtuellement indétectable. Pour peu que les pirates aient bien fait leur « travail », ils jouiront d’un emplacement privilégié pour d’autres opérations.

« Si les fondations sont brisées, la sécurité de l’ensemble du système l’est aussi », résume Enrique Nissim.

La délicate question des correctifs

Enrique Nissim et Krzysztof Okupski ont prévenu AMD il y a une dizaine de mois. L’entreprise texane a reconnu le problème et a demandé à ce que les chercheurs attendent avant de détailler leur découverte, ce qu’ils ont accepté. AMD souhaitait pousser plus avant ses investigations et préparer des solutions.

Sur le site de l’entreprise, une page officielle a été mise en ligne pour lister les processeurs touchés. On peut y lire plusieurs éléments importants. D’abord, qu’un certain nombre de processeurs ont déjà été mis à jour ou reçu des mesures d’atténuation depuis le début de l’année. C’est le cas notamment pour les processeurs Epyc de la 1re à la 4e génération.

Ensuite, et bien que les chercheurs aient estimé que Sinkclose était présente sur toutes les puces AMD depuis au moins 2006, on trouve surtout dans la liste des modèles datant de 2017 au plus tard.

En outre, même les puces référencées ne vont pas toutes obtenir un correctif. Sur les processeurs de bureau par exemple, les Ryzen 3000 n’en auront pas. Concernant les séries 4000 à 8000, les correctifs ont été distribués le 30 juillet. En revanche, les puces Ryzen 4000 et ultérieures ont toutes reçu un correctif au cours des dernières semaines. Pour de nombreuses puces Embedded (Epyc ou Ryzen), le correctif devrait arriver en octobre.

On peut se poser la question sur les processeurs Ryzen 3000 : très populaires à leur lancement, notamment chez les joueurs, pourquoi n’ont-ils pas de correctif, alors qu’AMD a corrigé plusieurs failles dans ces modèles en début d’année ?

Les mises à jour sont proposées depuis plusieurs mois via les constructeurs. Sous Windows normalement, elles doivent être « normalement » disponibles dans Windows Update. À ce stade, on ignore en revanche si elles ont été diffusées sous une forme prioritaire ou rangées dans les mises à jour facultatives (Windows Update > Options avancées > Mises à jour facultatives).

Pour les serveurs, les systèmes embarqués et les ordinateurs sous Linux, la distribution est plus complexe. Tout dépend du système et de ce qui est décidé par les constructeurs.


Viewing all articles
Browse latest Browse all 1069

Trending Articles