Definition

Qu'est-ce qu'une attaque par canal auxiliaire ?

Une attaque par canal auxiliaire (side-channel) est une faille de cybersécurité qui vise à recueillir des informations ou à influencer l'exécution d'un programme sur un système. Elle consiste à mesurer ou à exploiter les effets indirects du système ou de son matériel plutôt que de cibler directement le programme ou son code.

Ces attaques visent généralement à exfiltrer des informations sensibles, notamment des clés cryptographiques, en mesurant les émissions accidentelles du matériel. Une attaque par canal auxiliaire peut également être appelée attaque par barre latérale ou attaque par implémentation.

À titre d'illustration, imaginez que vous cherchiez à déterminer où une personne a conduit sa voiture. Une méthode d'attaque classique consisterait à suivre le véhicule ou à utiliser un traceur GPS. Une autre attaque de type « side-channel » consisterait à utiliser les mesures de la voiture pour essayer de déterminer comment elle est utilisée. Par exemple, mesurer les variations du niveau d'essence dans le réservoir, le poids de la voiture, la température du moteur ou de l'habitacle, l'usure des pneus et les rayures sur la peinture pourrait révéler des informations sur l'utilisation de la voiture, les endroits ou les distances parcourus, ou ce qui est stocké dans le coffre, tout cela sans affecter directement la voiture ni alerter son propriétaire qu'il fait l'objet d'une enquête.

Historiquement, les attaques par canal auxiliaire ont toujours été difficiles à mettre en œuvre, mais plusieurs facteurs contribuent aujourd'hui à leur généralisation. La sensibilité croissante des équipements de mesure permet désormais de collecter des données très détaillées sur un système pendant son fonctionnement. De plus, l'augmentation de la puissance de calcul et l'apprentissage automatique permettent aux pirates de mieux comprendre les données brutes qu'ils extraient. Cette compréhension approfondie des systèmes ciblés améliore la manière dont les pirates exploitent les changements subtils du système.


Toujours courante, la cible des rayonnements électromagnétiques émis par les appareils est le premier type connu d'attaque par canal auxiliaire.

Les pirates peuvent également cibler des cibles de grande valeur, telles que les processeurs sécurisés, les puces Trusted Platform Module et les clés cryptographiques. Même des informations partielles peuvent aider un vecteur d'attaque traditionnel, tel qu'une attaque par force brute, à avoir plus de chances de réussir.

Les attaques par canal auxiliaire peuvent être difficiles à contrer. Elles sont difficiles à détecter lorsqu'elles sont en cours, ne laissent souvent aucune trace et peuvent ne pas altérer le système pendant leur exécution. Les attaques par canal auxiliaire peuvent même s'avérer efficaces contre des systèmes physiquement isolés des autres ordinateurs ou réseaux. Elles peuvent également être utilisées contre des machines virtuelles et dans des environnements de cloud computing où l'attaquant et la cible partagent le même matériel physique.

Comment fonctionne une attaque par canal auxiliaire ?

Une attaque par canal auxiliaire diffère de la plupart des autres menaces de cybersécurité en ce qu'elle ne cible pas un programme ou son code. Elle consiste plutôt à collecter des informations sur l'exécution et le fonctionnement du programme au sein d'un système à des fins d'exploitation, généralement pour contourner le cryptage. Cela permet des attaques par timing, des attaques par analyse de puissance et d'autres attaques système qui fournissent indirectement au pirate informatique les informations nécessaires pour envahir un système.

Types d'attaques par canal auxiliaire

Les acteurs malveillants peuvent mettre en œuvre des attaques par canal auxiliaire de plusieurs manières, notamment les suivantes.

Électromagnétique

Un pirate mesure le rayonnement électromagnétique, ou les ondes radio, émis par l'appareil cible afin de reconstituer les signaux internes de celui-ci. Les premières attaques par canal auxiliaire étaient électromagnétiques. Le phreaking de van Eck et le système Tempest de la National Security Agency ont tous deux été utilisés pour reconstituer l'intégralité de l'écran d'un ordinateur. Les attaquants concentrent les attaques par canal auxiliaire modernes sur la mesure des opérations cryptographiques d'un système afin d'essayer de dériver des clés secrètes. Les appareils radio définis par logiciel ont abaissé la barrière d'entrée pour les attaques électromagnétiques, qui peuvent être effectuées à travers les murs sans aucun contact avec l'appareil cible.

Acoustique

Les pirates mesurent les sons émis par un appareil. En effectuant des attaques de type « proof of concept » (POC), ils peuvent reconstituer les frappes d'un utilisateur à partir d'un enregistrement audio de celui-ci en train de taper au clavier. Les pirates peuvent également obtenir certaines informations en écoutant les sons émis par les composants électroniques.

Puissance

Un pirate informatique mesure ou influence la consommation électrique d'un appareil ou d'un sous-système. En surveillant la quantité et le moment où un système ou l'un de ses sous-composants utilise de l'énergie, un attaquant peut déduire l'activité de ce système. Certaines attaques peuvent couper ou réduire l'alimentation électrique afin d'amener le système à se comporter d'une manière avantageuse pour l'attaquant, à l'instar des attaques Plundervolt.

Optique

Un pirate utilise des indices visuels pour obtenir des informations sur un système. Bien que rarement utilisées contre les ordinateurs, dans certaines attaques POC, les pirates ont utilisé la vidéo pour reconstituer le son des vibrations d'un objet en relation avec les sons. Les attaques simples par espionnage par-dessus l'épaule peuvent également entrer dans cette catégorie.

Calendrier

Un acteur malveillant utilise la durée d'une opération pour obtenir des informations. La durée totale peut fournir des données sur l'état d'un système ou le type de processus qu'il exécute. Dans le cadre d'une attaque par timing, l'attaquant peut comparer la durée d'un système connu à celle du système victime afin de faire des prédictions précises.

Mémoire cache

Un pirate exploite la mise en cache de la mémoire pour obtenir un accès supplémentaire. Les systèmes modernes utilisent la mise en cache et la prélecture des données pour améliorer leurs performances. Un pirate peut exploiter ces systèmes pour accéder à des informations qui devraient être bloquées. Les vulnérabilités Spectre et Meltdown découvertes en 2018, qui touchaient principalement les processeurs Intel, exploitaient ce canal.

iLeakage

Une attaque par canal auxiliaire spécifique à Apple, iLeakage, est l'une des variantes les plus récentes. Révélée en octobre 2023, elle recueille des informations à partir du navigateur Safari d'un appareil Apple. Grâce à ces informations, un pirate informatique peut examiner l'historique de navigation, les e-mails et les identifiants d'un utilisateur. Elle utilise une technique appelée « exécution spéculative », dans laquelle le processeur d'un appareil exécute une série de tâches avant d'y être invité, en anticipant qu'elles seront appelées. Les produits MacOS et iOS sont tous deux vulnérables.

Faiblesses matérielles

Les pirates informatiques peuvent utiliser les caractéristiques physiques d'un système pour induire un comportement, provoquer une défaillance ou exploiter la rémanence des données, c'est-à-dire les données qui persistent après leur suppression. Les attaques par « row hammering » se produisent lorsqu'un pirate modifie une zone de mémoire restreinte en inversant ou en martelant rapidement une autre zone de mémoire située à proximité sur la puce de mémoire vive (RAM) physique. La mémoire à code de correction d'erreurs peut aider à prévenir ce type d'attaque. Dans une attaque par démarrage à froid, l'attaquant abaisse rapidement la température de la RAM, ce qui oblige le système à conserver certaines informations après la coupure de l'alimentation afin que l'attaquant puisse les relire.

Prévention des attaques par canal auxiliaire

Les organisations peuvent mettre en œuvre quelques mesures d'atténuation basées sur les meilleures pratiques qui pourraient aider à se protéger contre les attaques par canal auxiliaire. Ces attaques nécessitent généralement une connaissance approfondie du système pour être exécutées ; par conséquent, une organisation doit garder confidentiels les détails relatifs à la mise en œuvre et aux fournisseurs.

La randomisation de l'espace d'adressage peut empêcher certaines attaques basées sur la mémoire ou le cache. L'utilisation d'équipements de qualité professionnelle peut également contribuer à empêcher l'exploitation des systèmes. L'accès physique aux systèmes doit également être restreint. Les entreprises peuvent également conserver les systèmes sensibles dans des cages de Faraday blindées, et les équipements de conditionnement de l'alimentation peuvent protéger contre les attaques électriques.

En tant que mesures d'atténuation extrêmes, augmenter le niveau de bruit dans un système rend plus difficile pour un attaquant d'obtenir des informations utiles. De plus, bien que les idées suivantes soient souvent inutiles et généralement déconseillées, elles peuvent s'avérer utiles dans certaines circonstances spécifiques.

Tout d'abord, lors de l'exécution d'un processus cryptographique, certains systèmes exécutent simultanément des processus similaires sans rapport et sans valeur afin de camoufler ceux qui intéressent l'attaquant. Un système peut également exécuter des processus ou des composants inutiles afin de masquer la puissance ou l'utilisation informatique, de sorte qu'elle ne soit pas corrélée à l'utilisation réelle. L'activation d'une source supplémentaire de rayonnement électromagnétique peut également masquer les signaux radio aux attaquants, et les utilisateurs peuvent définir la couleur de la police et l'arrière-plan du texte sur une couleur similaire afin de rendre difficile leur reconstruction à l'aide d'une technique de piratage van Eck ou d'une simple observation par-dessus l'épaule.

D'autres contre-mesures pratiques consistent à semer la confusion chez l'attaquant en randomisant l'ordre d'exécution des instructions dans un processus lorsqu'elles ne sont pas séquentielles. Une autre façon de se protéger contre les attaques par canal auxiliaire consiste à identifier toutes les voies potentielles de fuite d'informations inévitables et à utiliser des algorithmes cryptographiques pour rendre la fuite incompréhensible pour l'attaquant.

À mesure que l'informatique quantique devient une réalité, les menaces pour la cybersécurité deviennent elles aussi plus concrètes. Découvrez les mesures que les organisations peuvent prendre pour se préparer à la cybersécurité quantique.

Pour approfondir sur Menaces, Ransomwares, DDoS