【发布时间】:2019-06-26 01:25:01
【问题描述】:
当我发现one of Asus old drivers 容易受到物理内存读/写的影响时,我正在浏览exploitdb。有一个完整的 PoC 展示了如何从 RAM 中读取数据。问题是我有一个偏移量(比如说 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
【问题讨论】: