Un groupe de chercheurs des universitĂ©s du Texas, d'Illinois et de Washington a rĂ©vĂ©lĂ© des informations sur une nouvelle famille d'attaques par canaux auxiliaires (CVE-2022-23823, CVE-2022-24436), surnommĂ©e Hertzbleed. La mĂ©thode d'attaque proposĂ©e est basĂ©e sur les caractĂ©ristiques de gestion dynamique de la frĂ©quence dans les processeurs modernes et concerne tous les CPU Intel et AMD actuels. Potentiellement, le problĂšme peut Ă©galement se manifester dans les processeurs d'autres fabricants, prenant en charge le changement dynamique de frĂ©quence, par exemple dans les systĂšmes ARM, mais l'Ă©tude menĂ©e s'est limitĂ©e Ă l'examen des puces Intel et AMD. Les codes sources de la mĂ©thode d'attaque ont Ă©tĂ© publiĂ©s sur GitHub (la mise en Ćuvre a Ă©tĂ© testĂ©e sur un ordinateur avec un CPU Intel i7-9700).
Pour optimiser la consommation d'Ă©nergie et Ă©viter la surchauffe, les processeurs changent dynamiquement leur frĂ©quence en fonction de la charge, ce qui entraĂźne des variations de performance et affecte le temps d'exĂ©cution des opĂ©rations (un changement de frĂ©quence de 1 Hz entraĂźne une variation de performance de 1 cycle par seconde). Lors de l'Ă©tude menĂ©e, il a Ă©tĂ© constatĂ© que, dans certaines conditions, sur les processeurs AMD et Intel, le changement de frĂ©quence corrĂšle directement avec les donnĂ©es traitĂ©es, ce qui, par exemple, entraĂźne des temps de calcul diffĂ©rents pour les opĂ©rations «2022 + 23823» et «2022 + 24436». Sur la base de l'analyse des diffĂ©rences des temps d'exĂ©cution des opĂ©rations avec diffĂ©rentes donnĂ©es, il est possible de reconstruire indirectement l'information utilisĂ©e lors des calculs. Dans les rĂ©seaux Ă haute vitesse avec des dĂ©lais constants prĂ©visibles, l'attaque peut ĂȘtre menĂ©e Ă distance, en Ă©valuant les temps d'exĂ©cution des requĂȘtes.
En cas de succÚs de l'attaque, les problÚmes identifiés permettent de déterminer les clés secrÚtes sur la base de l'analyse des temps de calcul dans les bibliothÚques cryptographiques utilisant des algorithmes dont les calculs mathématiques s'effectuent toujours en un temps constant, indépendamment de la nature des données traitées. De telles bibliothÚques étaient considérées comme protégées contre les attaques par canaux auxiliaires, mais il s'est avéré que le temps de calcul est déterminé non seulement par l'algorithme, mais aussi par les caractéristiques de fonctionnement du processeur.
Ă titre d'exemple pratique illustrant la pertinence de la mĂ©thode proposĂ©e, une attaque sur la mise en Ćuvre du mĂ©canisme d'encapsulation de clĂ©s SIKE (Supersingular Isogeny Key Encapsulation), qui a Ă©tĂ© sĂ©lectionnĂ© pour la finale du concours des crypto-systĂšmes post-quantiques organisĂ© par l'Institut national des normes et de la technologie des Ătats-Unis (NIST), est prĂ©sentĂ©e. Ce mĂ©canisme est positionnĂ© comme Ă©tant rĂ©sistant aux attaques par canaux auxiliaires. Lors de l'expĂ©rience, une nouvelle variante d'attaque basĂ©e sur un texte chiffrĂ© sĂ©lectionnĂ© (un dĂ©chiffrement progressif basĂ© sur des manipulations du texte chiffrĂ©) a permis de rĂ©cupĂ©rer complĂštement la clĂ© utilisĂ©e pour le chiffrement, en effectuant des mesures Ă partir d'un systĂšme distant, malgrĂ© la mise en Ćuvre de SIKE avec un temps de calcul constant. La dĂ©termination de la clĂ© de 364 bits Ă l'aide de l'implĂ©mentation CIRCL a pris 36 heures, tandis que la mise en Ćuvre PQCrypto-SIDH a pris 89 heures.
Les entreprises Intel et AMD ont reconnu que leurs processeurs Ă©taient vulnĂ©rables, mais ne prĂ©voient pas de bloquer cette vulnĂ©rabilitĂ© par une mise Ă jour du microcode, car il est impossible de corriger matĂ©riellement la vulnĂ©rabilitĂ© sans un impact significatif sur les performances. Ă la place, des recommandations ont Ă©tĂ© faites aux dĂ©veloppeurs de bibliothĂšques cryptographiques pour bloquer par logiciel les fuites d'informations lors de l'exĂ©cution de calculs confidentiels. Les entreprises Cloudflare et Microsoft ont dĂ©jĂ ajoutĂ© une telle protection dans leurs mises en Ćuvre de SIKE, ce qui a entraĂźnĂ© une baisse de la performance de CIRCL de 5 % et de PQCrypto-SIDH de 11 %. Une autre solution pour bloquer la vulnĂ©rabilitĂ© dans le BIOS ou le pilote consiste Ă dĂ©sactiver les modes « Turbo Boost », « Turbo Core » ou « Precision Boost », mais ce changement entraĂźnera une rĂ©duction considĂ©rable des performances.
Les entreprises Intel, Cloudflare et Microsoft ont été informées du problÚme au troisiÚme trimestre 2021, et la société AMD au premier trimestre 2022, mais à la demande d'Intel, la divulgation publique des informations sur le problÚme a été retardée jusqu'au 14 juin 2022. La présence du problÚme a été confirmée dans les processeurs pour systÚmes de bureau et ordinateurs portables basés sur les architectures micro de 8 à 11 générations d'Intel Core, ainsi que pour divers processeurs de bureau, mobiles et serveur AMD Ryzen, Athlon, A-Series et EPYC (les chercheurs ont démontré la méthode sur un CPU Ryzen avec l'architecture Zen 2 et Zen 3).
Source : opennet.ru
