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
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
相关文章推荐
- 近几天 用微芯力科的板子 调试usb虚拟串口的程序,发现一些问题以及解决方法。和大家共享
- Android下binary级的一些分析调试方法
- 最近写的一个MySQL操作类(含调用方法),发上来与大家共享
- 一些VC的快捷键以及调试方法技巧
- 最近项目中需要在指定的字符串中取出数字字符,找了好多但都是词不达意,索性自己写了个方法,与大家共享!
- repeater基本使用方法,挺简单的,供大家共享
- 大家来做linux调试日志 (tomcat jsp server 配置方法)
- masm中list文件和宏的一些常用编译调试查看方法
- 无法访问.您可能没有权限使用网络资源.局域网无法访问共享,局域网无法访问打印机的一些方法
- 今天做了一个小软件,总结了一些经验与大家共享。
- Windows xp无法访问Windows7共享文件夹的原因和解决方法(在域名处错误,大家呢?)
- 转载:注解的力量 -----Spring 2.5 JPA hibernate 使用方法的点滴整理(六): 一些常用的数据库 注解
- py2exe使用方法 (含一些调试技巧,如压缩email 类)
- 平时在做ASP.NET项目里经常使用的一些函数和方法
- 一些VC的快捷键以及调试方法技巧
- 一些VC的快捷键以及调试方法技巧
- Tomcat 服务器配置及远程调试和不同web项目session共享方法以及设置TOMCAT的内存
- 一些VC的快捷键以及调试方法技巧
- .NET程序调试技巧(一):快速定位异常的一些方法
- 一些VC的快捷键以及调试方法技巧(转)