セキュリティ研究者がチップの動作原理を調査する場合、多くはWindowsやmacOS、Linuxといった汎用(はんよう)OSを使用しますが、これらは日常的な使用を目的として設計されているため、チップ内部の動作を正確に測定できないことがあります。そこでマサチューセッツ工科大学(MIT)の研究チームが、チップの内部構造を研究するための独自OS「Fractal」を開発しました。

Fractal: An Operating System Designed for Microarchitecture Reverse Engineering.pdf

(PDFファイル)https://people.csail.mit.edu/mengjia/data/2026.SP.fractal.pdf

To study how chips really work, MIT researchers built their own operating system | MIT News | Massachusetts Institute of Technology

https://news.mit.edu/2026/to-study-how-chips-really-work-mit-researchers-built-their-own-operating-system-0610

MIT's "Fractal" Kernel Makes it Possible to Measure Chip Behavior More Accurately

https://www.all-about-industries.com/kernel-fractal-makes-chip-behavior-more-accurately-measurable-a-cb164145045f91f407da9c516cf90c17/

「Spectre」や「Meltdown」といったチップに内在する脆弱(ぜいじゃく)性は、世界中のユーザーや企業に大きな影響を及ぼします。そのため、セキュリティ研究者はキャッシュやメモリ管理、分岐予測といったチップの内部構造を正確に測定し、チップに対してどのような攻撃が実行可能なのかを把握しようと試みます。

チップの内部構造を把握する際は、Windows・macOS・LinuxといったOSの中核部分であるカーネルを書き換えてテストが行われます。しかし、これらのOSはあくまで日常的な使用のために設計されているため、テスト中でも勝手にメモリ領域を管理したり、プロセスのスケジュール設定と解除を行ったり、処理の割り込みを発生させたりすることがあります。これにより、本来は測定のために一定に保たれるべき条件そのものが変化してしまうとのこと。

そこでMITの研究チームは、チップの研究を目的としてゼロから書き直されたOS(カーネル)である「Fractal」を開発しました。Fractalの特徴は、他のパラメータを大きく変更することなく、異なる特権レベルでテストを実行できるという点です。

汎用OSではシステム自体が特権レベルやアドレス空間、スケジューリングを管理して、すべての測定に影響を及ぼしてしまいます。Fractalでは、ユーザープロセスのメモリ内に配置されながらカーネル特権で実行される外部カーネルスレッドを用いることで、バックグラウンドノイズがほとんどないテストを実現したとのこと。

Fractalのプロジェクトを率いたMITの電気工学・コンピュータ科学博士課程学生であるジョセフ・ラヴィチャンドラン氏は、「私たちは本来の設計意図とは異なる方法でハードウェアを活用しています。ハードウェアでこのようなことが可能だとは、誰も想像していなかったでしょう。しかし、私たちはさまざまな基本機能を実現する方法を見つけました」と述べています。



研究チームは実際にFractalを用いて、Appleが開発した独自チップ「M1」の調査を行いました。調査の焦点は、CPUが次に実行される可能性のあるコードを予測するために使用する分岐予測に当てられました。分岐予測はパフォーマンスにとって重要ですが、サイドチャネル攻撃に悪用される場合があり、実際にSpectreやMeltdownの原因にもなっています。

M1には「CSV2」と呼ばれるARMのセキュリティ機能が実装されており、これはある特権レベルで実行されているコードが、別の特権レベルでの投機的実行を誘導することを防ぐためのものです。MITの研究チームは調査により、この保護機能が間接分岐予測の実行段階で有効であることを確認しました。

ところが、CPUは保護機能が動作する前に、潜在的なターゲットを命令キャッシュにフェッチしていることも判明。このフェッチはサイドチャネルを通じて観測可能であり、ユーザーコードが特権レベルを越えて、カーネルがキャッシュに取り込む内容に影響を与えることができるとのこと。

さらに研究チームは、iPhoneやiPadなどに搭載されているApple Siliconが、「ファントム投機」という誤予測を示すことも発見しました。ファントム投機では、通常の命令がCPUによって分岐として誤って解釈され、プログラムが要求していない投機的な動作が引き起こされる可能性があるそうです。MITの研究チームは、すでに調査結果についてAppleに開示済みだとのことです。



研究チームは、Fractalを単一のプロジェクトではなくインフラストラクチャとして設計しており、その他のセキュリティ研究者もFractalを使ってテストできるようにしています。Fractalはx86_64・ARM64・RISC-Vをサポートしており、研究者が使い慣れている標準ツールの移植版も提供されています。

ラヴィチャンドラン氏は、「これは顕微鏡のようなものです。手持ちの拡大鏡では少ししか見えません。しかし、電子顕微鏡があれば本当の意味での観察が可能になります。FractalとはまさにOSの電子顕微鏡なのです」と述べ、コミュニティ全体のテスト精度向上に期待を寄せました。