Windbg/KD驱动调试点滴–将平时调试的一些小方法共享给大家 --------- 转
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
yky says:
May 18th, 2007 at 2:28 pm
回去按部就班了下 在WINDBG中发现一词。$iment 可以让WINDBG帮我们算EntryPoint ;
bu $iment(Address) Address是模块地址 可以BU到DriverEntry

浙公网安备 33010602011771号