使用windbg转储EPROCESS

5
我正在使用LibVMI和Windows 7 32位进行实验;为了正确设置,我需要查看EPROCESS结构的前8个字节(库在内存中搜索一个魔数,这应该就是它)。
由于我的Windows技术不是很强,所以有谁能告诉我如何转储适当的内存比特?我正在运行本地内核调试器,并且已经到达“dt nt!_EPROCESS”,但这似乎只显示了结构的格式,而没有实际内容。
2个回答

8
命令是:
dt nt!_EPROCESS <address>

您应该能够从!process 0 7的输出中获取地址。

2
我明白了——Seva Titov的答案与我的做法类似。这是我是如何做到的:
输入命令:!process 0 0,它会给出正在运行的进程的简短列表;我特意启动了calc.exe来运行一个简单的小程序,所以我查看了这个列表,然后运行了下面的命令: !process calc.exe 输出的第一行类似于 PROCESS 83f81178,这是重要的部分。接着我运行了下面的命令: db 83f81178 这显示了从该偏移量开始的一块内存,看起来像是这样: 83f81178 03 00 26 00 00 00 00 00--80 11 f8 83 80 11 f8 83 ..&............ 83f81188 88 11 f8 83 88 11 f8 83--80 23 e2 3e 00 00 00 00 ........#.>.... 那就是我需要的内容,于是我停在了这里。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接