Реализации машины в qemu
В процессе обратной разработки прошивок возникает задача по эмуляции прошивки, например для фаззинг тестирования или детального изучения поведения в динамике. На практике обычно для этого хватает фреймворков avatar2, unicorn, qling и подобных. Однако они поддерживают далеко не все платформы и имеют ряд ограничений для решения таких задач. При разработке эмулятора PLC я столкнулся с тем что ни один фреймворк для эмуляции не поддерживал требуемую платформу.
Частично эти ограничения снимает разработка эмулятора на базе qemu, однако статей по этой тематике в сети достаточно мало, а официальная документация не содержит примеров реализации простых девайсов. В этой статье я хотел бы восполнить этот недостаток и поделиться своим небольшим опытом по реализации машины в qemu для эмуляции платформы, чтобы сэкономить время начинающих разработчиков и иследователей безопасности сталкивающихся с похожей задачей.
Читать далееИсточник: Хабрахабр