やりたいこと
TrustZoneを研究するための環境構築.
- TrustZoneによってハードウェアを2つに分割しセキュリティに関わる処理をSecure側で行うことでAndroidなどの汎用OS側に脆弱性があってもSecureOSには影響を及ぼさない
- NormalOSからはSecureOSの資源に対してアクセスが制限されるがSecureOS側からはSecureとNormalの両方の資源にアクセスできる
これらの点を踏まえて、NormalOSのメモリをSecureOSから監視するためにメモリを参照したいと考えているが、最適な環境が見つからない
試したこと
1のOP-TEEでは2つのOS間で資源の排他制御が実装されていない(?)ためなのか、直接メモリにアクセスできず、Secure側のMMUにNormal側のメモリをマッピングすることでアクセスできるというissueを見たが、例えばNormal側のプロセスがメモリのどこに展開されるかが分からないのでNormalメモリの仮想アドレスを物理アドレスに変換し、それをSecure側に伝えてそのアドレスをSecureの仮想アドレスにしなければならない.その実装は組み込まれていないので自分で行わなければならない.使える関数などが分かればできるかもしれないが、開発が進んで昔のissueのやり方ができなくなっていたりするので難しいものがある.
2,3はビルドしてデモの実行などはできるが拡張を実装したり、そもそも出来ることがよくわかっていない.
参照
あなたの回答
tips
プレビュー