オーストリアのグラーツ工科大学のHannes Weissteiner氏らの研究グループが、ブラウザの標準機能を悪用してSSDの読み書き遅延を計測し、ユーザーが閲覧中のWebサイトや起動中のアプリを特定できる攻撃手法「FROST(Fingerprinting Remotely using OPFS-based SSD Timing)」を発表した。悪意のあるWebページを開くだけで発動し、特別な権限も操作も不要。テスト環境では閲覧サイトの特定に約89%、起動中アプリの特定に約96%の精度を示した。
FROSTが悪用するのは、ブラウザに標準搭載された「OPFS(Origin Private File System)」だ。OPFSはユーザーの許可なしにローカルストレージへファイルを作成・読み書きできるAPIで、高機能なWebアプリ向けに設計されている。攻撃者はこれを使って大容量のファイルをSSDへ書き込み、4KB単位で絶え間なく読み出す。ファイルサイズがシステムのメモリ容量を超えると読み書きがSSDに直接当たり、他のプロセスがSSDへアクセスするたびに数マイクロ秒の遅延が生じる。この遅延パターンをニューラルネットワークで解析し、どのサイトやアプリが動いているかを推定する。
ChromeとSafariはOPFSで総ディスク容量の最大60%を占有できるため、256GBのSSDなら150GB超のファイルを置ける。実験はAppleの「M2 Mac Mini」(メモリ8GB、SSD 256GB)で行い、攻撃ページをChromeで動かしながら被害者がSafariを使う状況でもスループットの差は3.38%のみだった。ただし、60%ものディスク容量を消費する巨大ファイルはほとんどのユーザーが気づく。LinuxはSSD遅延計測を確認したが指紋採取の評価は未実施、Windowsは未テストという限界もある。
研究チームはGoogle、Apple、Mozillaに報告したが、いずれも当面の修正予定がないとした。緩和策として、OPFSのファイルサイズをメモリ内に収まる範囲に制限するか、OPFS利用に明示的な許可を求める方法を提案している。ブラウザのAPIがハードウェアのサイドチャネルを新たに開く事例として、SSDを使う機器全般のセキュリティ設計に問いを投げかけている。