Passer au contenu principal

15 Juin, 2026

Ce système d’exploitation révèle les sombres secrets d’une puce 

Ce système d’exploitation révèle les sombres secrets d’une puce 

Fractal offre aux chercheurs un nouvel outil pour étudier les défauts matériels.

Les systèmes d’exploitation modernes regorgent de mécanismes de défense contre les failles de sécurité . Mais que se passerait-il si ces défenses pouvaient être désactivées ? Cela permettrait d’avoir une vision claire de la puce exécutant le système d’exploitation et exposerait des vulnérabilités matérielles que ce dernier masque habituellement.

Fractal , un nouveau système d’exploitation codé à la main, offre cette visibilité. Conçu de A à Z par des chercheurs du Laboratoire d’informatique et d’intelligence artificielle (CSAIL) du MIT, Fractal est destiné à sonder l’architecture de la puce qui le fait fonctionner. Pour preuve, ce système d’exploitation, présenté en mai lors du Symposium IEEE sur la sécurité et la confidentialité 2026 à San Francisco , a permis de découvrir une vulnérabilité jusqu’alors inconnue dans la puce M1 d’Apple.

Joseph Ravichandran , doctorant au CSAIL et programmeur de Fractal, explique que le système d’exploitation a été inspiré par les obstacles rencontrés lors de ses recherches sur Pacman , une vulnérabilité des processeurs Arm révélée en 2022.

« Nous avons ouvert la voie avec des techniques comme les correctifs et les extensions de noyau personnalisés », explique Ravichandran, « mais ce n’était qu’une solution partielle. Notre rêve a toujours été de disposer d’un système d’exploitation entièrement personnalisé qui rendrait ces solutions de contournement inutiles. »

Sondage du stockage et du mouvement des données sur puce

Les chercheurs qui étudient les vulnérabilités matérielles doivent connaître précisément la manière dont les données sont stockées et transférées au sein d’une puce. Ils y parviennent en programmant des tests qui provoquent le comportement souhaité de la puce, puis en analysant les résultats pour reconstituer l’exécution du code.

Or, un système d’exploitation classique comme Windows ou macOS intègre des mécanismes de défense et des fonctionnalités qui masquent l’exécution du code et la gestion de la mémoire. « J’ai conçu plusieurs exercices pratiques pour notre cours de conception matérielle sécurisée », explique Ravichandran. « En constatant les difficultés rencontrées par les étudiants, et en les rencontrant moi-même dans le cadre de mes recherches, j’ai compris qu’il devait exister une meilleure solution. »

Fractal est la solution évidente à ce problème. Au lieu de corriger ou d’exploiter une faille d’un système d’exploitation classique, Fractal remplace intégralement le système d’exploitation d’origine d’un appareil par une alternative personnalisée axée sur la recherche en sécurité.

Comme on peut s’y attendre, coder un système d’exploitation est un véritable défi. Fractal a été entièrement développé à l’aide de plusieurs langages de programmation, dont l’assembleur, le C et le C++. Ravichandran a commencé à travailler dessus en juin 2024 et a terminé la première version du système d’exploitation à la fin de cette même année. Après des mois de tests, le débogage s’est avéré l’étape la plus complexe, car la création d’un système d’exploitation sur mesure pour un matériel non conçu pour le prendre en charge impliquait l’absence d’outils de débogage.

« Lorsque j’ai réussi à faire fonctionner Fractal sur Apple Silicon , pendant très longtemps, le seul indicateur dont je disposais était le voyant d’alimentation en façade », explique Ravichandran. « Ce voyant m’indiquait si mon code s’exécutait et restait allumé, ou si la machine avait planté et s’éteignait. »

Fonctionnalités de Fractal OS pour la recherche en sécurité

Fractal offre aux chercheurs trois fonctionnalités clés.

La première fonctionnalité majeure est la gestion de la concurrence multi-privilèges. Sur un système d’exploitation classique, comparer le comportement d’une puce à différents niveaux de privilèges (qui contrôlent l’accès d’un programme aux ressources système) est extrêmement complexe. Changer de niveau modifie également l’organisation de la mémoire, l’état du prédicteur de branchement du processeur, et bien plus encore, ajoutant ainsi des variables susceptibles de fausser les résultats des tests. Fractal peut exécuter un test simultanément à différents niveaux de privilèges tout en conservant les autres paramètres identiques, ce qui permet d’obtenir des résultats beaucoup plus fiables.

La seconde fonctionnalité est le multitâche coopératif, une alternative au multitâche préemptif, une fonctionnalité classique des systèmes d’exploitation. Le multitâche préemptif est essentiel pour un système d’exploitation moderne, car il permet de gérer simultanément des dizaines, voire des centaines de tâches. Cependant, il peut aussi interrompre un test si le système d’exploitation juge une autre tâche prioritaire, ce qui fausse les résultats. Le multitâche coopératif de Fractal, lorsqu’il est activé, permet à l’utilisateur de définir l’ordre d’exécution du code sans interruption.

La dernière fonctionnalité est le système de mémoire de Fractal, appelé gmap. Dans un système d’exploitation classique, un programme accède à la mémoire via des adresses virtuelles que le système d’exploitation associe au matériel physique. Cette association peut varier d’un test à l’autre. Gmap, quant à lui, duplique les emplacements mémoire entre les threads et les tâches, éliminant ainsi une variable supplémentaire.

Ces fonctionnalités ont en commun le contrôle et la clarté. « L’objectif de Fractal est de décrire simplement et avec précision le fonctionnement du matériel », explique Ravichandran. « Grâce aux informations recueillies par Fractal, les chercheurs seront mieux à même de comprendre le comportement du matériel indépendamment du système d’exploitation. »

Découverte de spéculations fantômes sur M1

Pour démontrer les capacités de Fractal, Ravichandran l’a ciblé sur le M1 d’Apple, une cible choisie principalement en raison du matériel disponible.

Fractal a permis de découvrir les premières preuves de l’existence d’une faille de sécurité Phantom affectant les puces Apple Silicon . Cette faille permet, dans certains cas, à un attaquant de contrôler momentanément le fonctionnement d’une puce selon un scénario prédéfini. La présence de Phantom était connue chez AMD et Intel, mais n’avait jamais été démontrée dans la puce M1 d’Apple… jusqu’à présent.

L’impact pratique de cette vulnérabilité est probablement limité. Fractal a constaté que, bien que des accès Phantom puissent se produire sur le processeur M1 d’Apple, les instructions ne sont jamais exécutées. Ravichandran a refusé de spéculer sur la manière dont cette vulnérabilité pourrait être exploitée et a indiqué qu’elle avait été signalée à Apple.

Bien que principalement testé sur un Mac Mini équipé d’un processeur Apple M1, Fractal fonctionne également sur de nombreux PC Intel et AMD, Raspberry Pi et certains appareils Apple Silicon plus récents, comme le Mac Mini avec processeur Apple M4. Fractal est disponible gratuitement en téléchargement en tant que système d’exploitation open source sous licence MIT. Ravichandran a publié le noyau sur GitHub et la configuration expérimentale complète sur Zenodo ; des informations complémentaires sont disponibles sur le site web de Fractal .

Ravichandran est impatient de voir comment d’autres chercheurs utiliseront Fractal pour explorer d’autres microarchitectures. « Actuellement, mon objectif est de diffuser ce système afin que d’autres chercheurs puissent en bénéficier », explique-t-il. « J’espère que Fractal deviendra un projet collaboratif, enrichi par les contributions d’autres laboratoires de recherche qui tireront profit de cette approche. »

https://spectrum.ieee.org/fractal-os-operating-system-security