您的位置:首页 > 其它

Windbg/KD驱动调试点滴–将平时调试的一些小方法共享给大家 --------- 转

2009-07-28 10:11 274 查看
Windbg/KD配置可以参见xIkUg的文章

1,调试动态加载的驱动,如果有符号,则可以在驱动加载前,在Windbg/KD中执行如下命令
bu mydriver!DriverEntry,驱动在载入的时候就会被断在DriverEntry函数入口.
2,如果没有符号,1种办法是,在系统调用DriverEntry处下断,因为操作系统不同,所以其具体位置也不一样,
不过目前win2k,xp,2k3 都在nt!IopLoadDriver函数里,
调用代码Win2k是:
ff502c call dword ptr [eax+2Ch]
XP和2k3里是
ff572c call dword ptr [edi+2Ch]
这行代码在nt!IopLoadDriver尾部,可以用Windbg的uf命令或IDA反IopLoadDriver出来从下往上查找.
另外一种办法就是,直接修改PE在入口处放置Int 3.

不错...没有符号的时候还有一种办法,我补充一下
也是用bu命令,在drivername后跟上一个EntryPoint,如:

bu mydriver+0×123

0×123就是驱动的EntryPoint

2

yky says:

May 18th, 2007 at 2:28 pm

回去按部就班了下 在WINDBG中发现一词。$iment 可以让WINDBG帮我们算EntryPoint ;
bu $iment(Address) Address是模块地址 可以BU到DriverEntry
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐