Тестирование на Windows VMware Workstation 16.2.0 с гостевой ОС Ubuntu Server 22
По крайней мере одно USB-устройство должно быть подключено к гостевой машине
измените 'qh->field4' в коде ehci.c
Введите 'sudo ./run.sh' для компиляции и запуска PoC
Пример
используйте 'lsusb' для определения ID устройства, используйте ID устройства для установки 'qh->field4'
Код vmx выделит структуру размером 0x18 (размер можно контролировать в коде) буфера для чтения физической памяти гостевой системы.
общий размер этой структуры будет 0x400
адрес этой структуры — 0x26d6caa80d0
в итоге vmx прочитает 0x800 байт (можно контролировать в коде) физической памяти по адресу 0x2606CAA84C0, который является последними 0x10 байтами структуры 0x26d6caa80d0 (первые 0x8 уже прочитаны на этапе выделения)