Linux カーネルがホスト カーネルである場合、ゲスト カーネルが仮想マシン内で実行する内容によって悪影響を受けないようにする必要があります。
ゲスト カーネルからホスト カーネルへのインターフェイスをファジングして、そのプロパティをテストしたいと思います。テストをゲスト カーネル内 (たとえば、カーネル モジュール内) で実行し、任意のコードを生成してから、そのコードを実行する必要があることは明らかです。ホスト カーネルがクラッシュした (または何か「興味深い」ことをした) 場合、テストは失敗します。
だから、私の質問は次のとおりです。
- すでにこれを達成しているテストを知っていますか?
- 回避する必要があるホスト カーネルをクラッシュさせると予想される命令はありますか?
- Linuxカーネル内でガベージを生成する最良の方法は何ですか?
- ガベージを生成したら、どうすれば実行できますか?
とりあえず、一般的なファジング アプローチに焦点を当てたいと思います。後でこのテストが機能するようになったら、カーネル内のさまざまな仮想化された命令とドライバーを外科的にファジングするように変更します。
更新:さらに考えてみると、完全なガベージを使用したファジングは機能しません。ホストをクラッシュさせると予想されるよりも頻繁にゲスト マシンをクラッシュさせるからです。ですから、最初から外科的にアプローチする必要があると思います。何かアドバイス?