Windbg查看虚拟地址转物理地址数据简单流程

1.双机调试下

虚拟机打开test.exe文件

int main()
{
    printf("%p" , "aaabbbccc");
}

exe打印的虚拟地址:00217B30

2.转二进制: 00000000 ‭00100001 01111011 00110000‬

按10-10-12拆分:00000000‭00 1000010111 101100110000‬

变成了:0-217-B30

3.kd> ! process 0 0 test.exe

获取到到DirBase:00258000

4.kd> !00258000

根据【0-217-B30】的【0】项,获取到27bf4847

清除后三位获得 27bf4000

5.kd> !dd 27bf4000 +217*4

根据【0-217-B30】的【217】下标,获取到281f5005

清除后三位获得 281f5000

6.kd> !db 281f5000 +B30

根据【0-217-B30】的【B30】偏移,获取到数据

猜你喜欢

转载自www.cnblogs.com/ltyandy/p/11418352.html
今日推荐