Я просматривал exploitdb, когда обнаружил, один из старых драйверов Asus уязвим для чтения / записи физической памяти.Есть полностью работающий PoC, показывающий, как читать из оперативной памяти.Проблема в том, что у меня есть смещение (скажем, 0x31E4), которое указывает относительное положение значения, которое мне нужно в памяти программ, но драйвер возвращает информацию об абсолютном адресе окна.Как я могу получить адрес базового процесса в физической памяти (предпочтительно в C #)?Это вообще возможно?
Пример псевдокода:
DWORD offset = 0x31E4; // Offset
int size = sizeof(float); // Size of float
float output = Read(ProgramBase + offset, size); // Read function that read absolute value from RAM, for that I need ProgramBase