WinDbg下断驱动入口

这个问题虽然是比较老了,但是看雪上还有同学提到,在这里做个总结,给像我这样的新手看看。

 

1)直接修改入口

用c32asm或者其他PE编辑工具,修改开头的几个字节,改成cc,即int 3。这样,驱动加载的时候就会断在这里了。

ps:这种方法对于有校验的驱动可能不太适用。

 

2)下断IopLoadDriver

这里的EDI其实就是DriverObject。DriverObject+2c就是DriverInit。在这里单步进去就是DriverEntry了。

ps:这种方法下断IopLoadDriver对应的偏移,在不同的操作系统下,会有所不同。不过对应的代码基本上是如下形式:

push reg

call reg+xx

 

3)sxe ld:module name


sxe ld:hookport.sys 

当hookport模块被加载的时候,就触发了一个异常:

 

得到模块的基地址base:

 

下断驱动模块执行入口点

bp base+poi(poi(base+3c)+base+28)

ps:此方法可以下断boot型的驱动。

posted @ 2012-07-11 14:50  einyboy  阅读(1628)  评论(0编辑  收藏  举报