概述
一般说来,调速驱动程序分为两种:
1.存在PDB文件的调试:
这里的PDB文件其实就是调试符号文件,假如我们调试的这样的文件,我们可以再windbg中使用 :bp 驱动名!DriverEntry,这个时候当加载驱动的时候,程序就会断在入口了。
2.没有PDB文件的调试:
在调试别人的驱动程序时,也就是自己只有bin,并且在这个bin没有PDB文件,以及你没有它的代码。这种情况下,就出现问题了。好在我们可以查看SXE LD 驱动的名字.sys来下断,这个时候,只要加载驱动,马上就能别windbg识别,然后我们可以使用:lmvm 驱动名,查看驱动在内存的相关信息,利用得到的信息下断点。
这个时候下的断点:bp base+poi(poi(base+3c)+base+28),这里poi是取值的意思。
下边我以调试XueTr.sys的驱动作为说明:
先设置好异常事件:
2。运行后,触发了异常:
3.查看XueTr.sys的相关信息,记录下起始地址,利用bp b22b9000+poi(poi(b22b9000+3c)+b22b9000+28)下断,断下后,即是驱动的入口了。
最后
以上就是着急火为你收集整理的Windbg调试内核驱动方法的全部内容,希望文章能够帮你解决Windbg调试内核驱动方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复