异想天开

What's the true meaning of light, Could you tell me why

windbg一次驱动调试

日期:2018-03-11 21:21:39
  
最后更新日期:2018-03-11 21:56:37
通过virtualbox内核驱动调试方法 可以搭建virtualbox调试环境。本文通过如何来调试truecrypt驱动来讲解windows内核驱动调试方法。

在host主机内执行,这里使用windows的在线符号服务器,所以需要联网
[code lang="cpp"]
C:\WinDDK\7600.16385.1\Debuggers\windbg.exe -y SRV*E:\Study\Symbols_Win7_32*http://msdl.microsoft.com/download/symbols -b -k com:port=\\.\pipe\myvbox,baud=115200,pipe -y
[/code]
此时windbg界面会挂起

打开虚拟机,选择第二个启动

host主机就会执行到int 3, 这时可以加上windows驱动符号文件的目录。比如我将驱动的符号文件放在E:\Study\pdb。
sympath命令添加符号搜索路径,
reload重新加载符号文件
bu设置符号断点
g继续执行,英语单词go

这时在虚拟机里面用drivermonitor加载驱动后,这时windbg就可以显示c语言的代码了。
p命令 step into
t命令 step over

bp 在地址上面打断点
bl 显示断点
bd 禁止断点
x 显示变量的值

更多的命令,可以对照手册边学边用。