Должно быть так, что ядро Linux, если оно является ядром хоста, не должно подвергаться негативному влиянию того, что гостевое ядро выполняет внутри виртуальной машины.
Я хотел бы протестировать это свойствопутем фаззинга интерфейса от гостевого ядра до ядра хоста.Мне кажется ясным, что тест должен выполняться внутри гостевого ядра (скажем, в модуле ядра), генерировать произвольный код и затем выполнять этот код.Тест не пройден, если ядро хоста падает (или делает что-то «интересное»).
Итак, мои вопросы:
- Вам известны какие-либо тесты, которые уже выполняют это?
- Существуют ли инструкции, которые ожидаются для сбоя ядра хоста, которых мне следует избегать?
- Каков наилучший способ создания мусора внутри ядра Linux?
- После того, как я сгенерировал мусор, как мне его выполнить?
В настоящее время я хотел бы просто сосредоточиться на общем подходе размытости.Позже, после того, как этот тест заработает, я изменю его на хирургическое размытие различных виртуализированных инструкций и драйверов в ядре.
Обновление: Подумав об этом дальше, запустив полный мусорне будет работать, так как я буду ломать свою гостевую машину гораздо чаще, чем я ожидаю, чтобы сломать мой хост.Итак, я думаю, что мне нужно подходить к этому хирургически с самого начала.Любой совет?