Core Concepts
AMD Zen 3およびZen 4 CPUのすべてのスケジューラキューが情報漏洩に利用可能であり、キーストロークタイミングの検出や高速なコバートチャネルの構築が可能であることを示した。
Abstract
本論文では、AMD Zen 3およびZen 4 CPUのスケジューラキューに関する以下の知見を示した:
全てのスケジューラキューが情報漏洩に利用可能であることを系統的に分析した。Zen 3では既知の整数乗算スケジューラ以外にも、整数ALUスケジューラ2と3、FPUスケジューラの利用方法を明らかにした。Zen 4では命令セットが大幅に変更されており、一部の命令が複数のスケジューラを使用するなど、Zen 3とは異なる動作を示すことを発見した。
スケジューラキューの正確な容量を測定するため、タイミング情報を必要としない新しい手法「bingo race」を提案した。この手法により、従来の手法よりも正確にスケジューラキューの容量を特定できることを示した。
全ての整数スケジューラキューを利用して、ユーザ入力のキーストロークタイミングを検出できることを実証した。F1スコアが99.5%以上、正しく検出したキーストロークの標準偏差が4ms以下と、非常に高い精度を達成した。
Firefoxのブラウザ上でJavaScriptから、クロスオリジンポリシーやサイトの分離を回避しつつ、940.7 bit/sの高速なコバートチャネルを構築できることを示した。
以上の結果から、AMD CPUのスケジューラキューを悪用した攻撃手法は、より広範囲に及ぶ深刻な脅威となることが明らかになった。
Stats
AMD Zen 3 CPUのスケジューラ1のキャパシティは24エントリ
AMD Zen 4 CPUのスケジューラ1のキャパシティは24エントリ