MilvusVisor v0.3.0
新機能
-
SMMUv3への対応及びDMA Attackからの保護
SMMUv3を発見したら、CPUのStage2 Page Tableのアドレスを設定したSTEを作成し、そのエントリをクローンしたもので構成されたテーブルをSMMUに適用することでHypervisor領域への書き込みを行えないようにしています。 -
SMMUのMMIO領域の保護
SMMUのMMIO領域をフックし、書き込みしようとした場合はその命令をキャンセルすることでSMMUの設定変更を不能にしています。 -
ACPIのIORTエントリの隠蔽
SMMUのMMIOアドレスなどの情報を提供するACPIのIORTというテーブルが存在するメモリ領域へのアクセスをフックし常に0を返すことでOSからはテーブルが存在しないように しています。
動作確認
- FX700(Linux起動可能・DMA Attackからの保護確認済)