我是靠谱客的博主 着急火,最近开发中收集的这篇文章主要介绍Windbg调试内核驱动方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一般说来,调速驱动程序分为两种:


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调试内核驱动方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(68)

评论列表共有 0 条评论

立即
投稿
返回
顶部