123456

 

2012年5月14日

Windbg命令学习7(d*s和~s (n m ~f ~u))

摘要: 以下默认windbg加载calc程序1.d*sdds、dps和dqs命令显示给定范围内存的内容,它们是把内存区域转储出来,并把内存中每个元素都视为一个符号对其进行解析,dds是四字节视为一个符号,dqs是每8字节视为一个符号,dps是根据当前处理器架构来选择最合适的长度比如要看看当前stack 中保存了哪些函数地址,就可以检查ebp 指向的内存0:000> dds ebp0007fdfc 0007ff1c0007fe00 010021b0 calc!WinMain+0x25f0007fe04 0007fee80007fe08 000000000007fe0c 000000000007.. 阅读全文

posted @ 2012-05-14 17:33 hgy413 阅读(436) 评论(0) 推荐(0) 编辑

Windbg命令学习6(k和x)

摘要: 1.kk*命令显示给定线程的调用堆栈,以及其他相关信息~0 k表示打印0号线程的调用堆栈,直接用k表示打印当前线程的调用堆栈0:002> ~0kChildEBP RetAddr 0007fddc 77d191be ntdll!KiFastSystemCallRet0007fdfc 010021b0 USER32!NtUserGetMessage+0xc0007ff1c 010125e9 calc!WinMain+0x25f0007ffc0 7c817077 calc!WinMainCRTStartup+0x1740007fff0 00000000 kernel32!BaseProcess 阅读全文

posted @ 2012-05-14 16:15 hgy413 阅读(350) 评论(0) 推荐(0) 编辑

Windbg命令学习6(!runaway和~)

摘要: 1.!runaway!runaway命令显示每个线程消费的时间Bit 0 (0x1) 让调试器显示每个线程消耗的用户模式时间(user time),默认不加就是0x1Bit 1 (0x2) 显示每个线程消耗的内核时间(kernel time)。 Bit 2 (0x4) 显示每个线程从创建开始经历了多少时间。 就是三者的组合:1 2 3 4 5 6 70:002> !runaway User Mode Time Thread Time 0:890 0 days 0:00:00.031 2:a00 0 days 0:00:00.000 1:117... 阅读全文

posted @ 2012-05-14 13:44 hgy413 阅读(257) 评论(0) 推荐(0) 编辑

Windbg命令学习5(!address和s和!vadump)

摘要: 以下例子仍以加载calc为基础学习1!address!address 扩展显示目标进程或目标机使用的内存信息。这个学习起来比较简单:我们直接使用!address -?就可以找到它的使用说明:给个例子:0:001> !address -?!address - prints information on the entire address space!address -? - prints this help!address - prints available information about the region ... 阅读全文

posted @ 2012-05-14 11:13 hgy413 阅读(916) 评论(0) 推荐(0) 编辑

导航