
L'adoption rapide des designs basés sur des chiplets révolutionne l'industrie des semi-conducteurs, permettant des performances plus élevées, une plus grande flexibilité et une efficacité énergétique accrue. Cependant, ce nouveau paradigme s'accompagne d'une gamme évolutive de défis de sécurité, en particulier des attaques par canal auxiliaire (SCA) et des vulnérabilités microarchitecturales.
Dans cet article, nous allons explorer l'intersection entre conception matérielle, chiplets, et sécurité. Nous allons démystifier les attaques par canal auxiliaire—des bases aux menaces avancées—discuter des interconnexions redondantes en tant que stratégie de sécurité, fournir des exemples réels de hackers ou de défenseur, et présenter des exemples de code pratique pour la détection et l'analyse des menaces. Ce guide est conçu pour les débutants comme pour les professionnels expérimentés.
Les chiplets sont des blocs de construction modulaires en silicium. Au lieu de fabriquer toutes les fonctions du système sur une seule grande matrice monolithique (coûteuse et sujette à des problèmes de rendement), les concepteurs construisent des blocs fonctionnels plus petits—les chiplets—qui sont fabriqués individuellement puis assemblés en un paquet via des interconnexions avancées.
Exemple :
Un paquet CPU moderne peut contenir des chiplets séparés pour les cœurs de calcul, les caches, l'IO, les contrôleurs de mémoire, et les accélérateurs IA.
Technologies clés :
Bien que les chiplets offrent des avantages économiques et technologiques clairs, ils introduisent de nouveaux risques en termes de sécurité et de fiabilité :
Les attaques par canal auxiliaire (SCA) exploitent les informations divulguées par des moyens indirects tels que la consommation d'énergie, les variations de temps, les émissions électromagnétiques, et les changements d'état de cache/tlb pour inférer des secrets comme des clés cryptographiques ou des données privées.
Les canaux auxiliaires ne cassent pas l'algorithme—ils cassent l'implémentation.
Canaux auxiliaires communs :
L'attaque "Binoculars" [1, 2] démontre comment les canaux auxiliaires microarchitecturaux peuvent ouvrir de nouvelles vecteurs d'attaque.
Mécanisme :
Les parcours de pages—comment un CPU traduit la mémoire virtuelle en mémoire physique—peuvent être retardés ou accélérés selon l'état de la mémoire d'autres chiplets ou cœurs. En mesurant ces variations de temps, un attaquant peut inférer des opérations sensibles ailleurs sur la puce ou le paquet.
Impact sur les systèmes de chiplets :
Étant donné que les opérations mémoire s'étendent sur plusieurs chiplets et interfaces, il y a plus d'endroits où ces fuites peuvent se produire. L'activité de cache, de parcours de page, ou de TLB entre chiplets augmente le risque.
Rowhammer est une célèbre attaque de renversement de bits qui cible les cellules DRAM en ouvrant et fermant rapidement des rangées adjacentes. Dans les systèmes de chiplets, si les contrôleurs mémoire sont séparés des CPUs ou intégrés sous forme de leurs chiplets, la susceptibilité Rowhammer peut augmenter en raison du bruit transversal des chiplets et des variations de timing.
# Exemple : Utilisation de rowhammer-test (utilitaire Linux)
sudo apt-get install rowhammer-test
sudo rowhammer-test
# Surveiller la sortie pour la présence de renversements de bits
Remarque : Exécutez ce test uniquement sur du matériel non critique !
Spectre et Meltdown exploitent l'exécution spéculative—une fonctionnalité clé des performances dans les CPUs. Les attaquants peuvent utiliser les différences de timing du cache pour extraire des informations secrètes (comme des mots de passe) provenant d'autres programmes.
Exemple de mesure du timing du cache :
// Pseudocode pour mesurer le temps d'accès au cache
start = rdtsc();
access_memory(address);
end = rdtsc();
printf("Temps: %d\n", end - start);
Les attaquants évincent des lignes de cache et sondent les temps pour faire des inférences.
L'interconnexion—fils, pistes, protocoles reliant les chiplets—est à la fois l'épine dorsale et la zone la plus exposée des paquets de chiplets. La sécurité ici est aussi critique que dans les unités de calcul elles-mêmes.
Les interconnexions redondantes signifient ajouter des chemins de données parallèles (chemin de données principal + chemin de sécurité auxiliaire). Leurs objectifs :
Exemple de conception :
Le chemin auxiliaire peut être utilisé pour :

Image : Exemple de données redondantes et de chemins auxiliaires de santé dans une interconnexion de chiplet.
Les plateformes modernes exposent des compteurs matériels, des journaux de traçage, et d'autres télémetries qui peuvent signaler une activité anormale liée aux canaux auxiliaires.
Outils populaires :
perf (outil de surveillance des performances sous Linux)perf Linux# Liste des événements matériels disponibles
perf list
# Surveiller les misses de cache L1 sur le processus avec le PID 1234 :
sudo perf stat -e L1-dcache-load-misses -p 1234 sleep 10
# Surveiller les misses de TLB pour tous les CPUs pendant 30 secondes
sudo perf stat -e dTLB-load-misses -a sleep 30
Supposons que vous avez des capteurs IPMI ou embarqués pour surveiller la puissance du CPU ou du paquet de chiplets.
import time
import subprocess
def read_power():
# Remplacez par la commande de lecture de capteur ou IPMI réelle
output = subprocess.getoutput('ipmitool sensor | grep "CPU Power"')
# Exemple de parsing de la sortie
try:
return float(output.split('|')[1].strip().split(' ')[0])
except:
return None
while True:
power = read_power()
if power and power > 120: # seuil en watts
print(f"ATTENTION: Consommation énergétique élevée détectée: {power}W")
time.sleep(1)
#!/bin/bash
perf stat -e L1-dcache-load-misses -a sleep 10 2>&1 | grep "L1-dcache-load-misses"
Cette commande affiche un résumé de l'activité de miss de cache sur tout le système toutes les 10 secondes. Si vous voyez une poussée soudaine inexpliquée, cela peut justifier une enquête plus approfondie.
Les compteurs de performance ne sont pas des outils de sécurité en soi, mais des motifs inhabituels peuvent révéler une activité de canal auxiliaire :
Avancé : Profilage du trafic d'interconnexion pour détecter les canaux clandestins via l'entropie.
À mesure que la révolution des chiplets s'accélère, la sécurité matérielle passe d'une préoccupation de second plan à une impératif de salle de conseil. La surface d'attaque évolue : la modularité augmente à la fois les opportunités et les risques.
Une défense efficace nécessitera la synergie entre le matériel, le firmware et la surveillance opérationnelle. Les entreprises de semi-conducteurs, les intégrateurs systèmes, et les professionnels de la sécurité doivent travailler ensemble pour sécuriser non seulement la logique interne de chaque chiplet mais aussi le "tissu" qui les lie ensemble.
En adoptant des interconnexions redondantes, en tirant parti des chemins de surveillance de la santé, et en utilisant des outils de détection modernes, nous pouvons fortifier les systèmes basés sur des chiplets contre les attaques par canal auxiliaire et microarchitecturales—protégeant tout, des superordinateurs IA aux véhicules à haute sécurité.
perf DocumentationIntéressé par des simulations d'attaques spécifiques, des tutoriels de code, ou des diagrammes architecturaux ? Déposez vos demandes dans les commentaires !
Si vous avez trouvé ce contenu utile, imaginez ce que vous pourriez accomplir avec notre programme de formation élite complet de 47 semaines. Rejoignez plus de 1 200 étudiants qui ont transformé leur carrière grâce aux techniques de l'Unité 8200.