Windbg对过滤驱动DriverEntry函数下断点技巧
来源:互联网 发布:siam journal 知乎 编辑:程序博客网 时间:2024/05/21 20:21
http://www.cppblog.com/flytosky2008gao/archive/2009/08/16/93477.aspx
方法1:
1> 先用DeviceTree.exe查看指定的过滤驱动的Load Address(加载地址)
2> 再用LordPE.EXE查看指定过滤驱动文件的入口点地址
3> 计算过滤驱动的DriverEntry函数内存地址 DriverEntry函数内存地址 = Load Address + 入口点地址
例子:
1> Load Address = 0xFAABF000
2> 入口地址 = 0x3400
3> Windbg下断点 bu 0xFAABF000+0x3400
方法2:
1> 先用DeviceTree.exe查看指定的过滤驱动的Service Name
2> 再用LordPE.EXE查看指定过滤驱动文件的入口点地址
3> 计算过滤驱动的DriverEntry函数内存地址 DriverEntry函数内存地址 = Service Name + 入口地址
例子:
1> Service Name是 ntfs
2> 入口地址 = 0x3400
3> Windbg下断点 bu ntfs+0x3400
方法3:
在windbg调试时,通过u Module!DriverEntry看到机器指令,然后选一个恰当的地址(或者直接DriverEntry第一条指令的地址也可)比如是f8399695,那么,直接bu f8399695即可。
或者有符号文件,则直接 bu Module!DriverEntry
方法4:
编写源代码时,在DriverEntry开头,加
#ifdef DBG
_asm int 3
#endif
那么,调试时,执行到DriverEntry的int 3,自然会停下来。
DriverEntry
补充:注意,在DriverEntry处下断点,最好是用bu命令,而不是bp命令。
bu命令用来设置一个延迟的、以后再求解的断点,对未加载模块中的代码设置断点。
实现原理:当指定模块被加载时,才真正设置这个断点。
对动态加载模块的入口函数或初始化代码处 加断点特别有用。
上一篇:WinDBG 技巧:设断点命令详解(bp, bu, bm, ba 以及bl, bc, bd, be)
下一篇:Device Interface Classes WDM
- LNK1123: 转换到 COFF 期间失...
- WIN7访问共享:0x80070035 找不...
- Delphi 2010下载+完美破解...
- vs2010调试C++程序时提示 无...
- VISIO,不规则封闭图形填充方...
- linux dhcp peizhi roc
- 关于Unix文件的软链接
- 求教这个命令什么意思,我是新...
- sed -e "/grep/d" 是什么意思...
- 谁能够帮我解决LINUX 2.6 10...
- Windbg对过滤驱动DriverEntry函数下断点技巧
- Windbg对过滤驱动DriverEntry函数下断点技巧 【zt】
- Windbg对过滤驱动DriverEntry函数下断点技巧 【zt】
- Windbg对过滤驱动DriverEntry函数下断点技巧
- Windbg对过滤驱动DriverEntry函数下断点技巧
- windbg在DriverEntry下断点
- 驱动调试中怎么样让windbg停在DriverEntry
- 驱动调试中怎么样让windbg停在DriverEntry
- 驱动调试中怎么样让windbg停在DriverEntry
- WinDBG调试驱动时中断DriverEntry的方法
- 驱动调试中怎么样让windbg停在DriverEntry
- 驱动调试中怎么样让windbg停在DriverEntry
- 驱动调试中怎么样让windbg停在DriverEntry
- windbg停在无符号驱动的DriverEntry(WIN10)
- WinDBG调试驱动时中断DriverEntry的方法
- windbg 调试驱动设置断点
- WinDbg 下断点命令详解
- 一个简单的NT驱动之驱动入口函数(DriverEntry)
- WINDBG 下载指定DLL的PDB
- WINDBG,Deferred Symbol Loading
- jquery获取文件后缀的方法
- WinDBG 技巧:设断点命令详解(bp, bu, bm, ba 以及bl, bc, bd, be)
- 选择正规的短信服务商应注意的几点!
- Windbg对过滤驱动DriverEntry函数下断点技巧
- Device Interface Classes WDM
- C++基础_05
- Windows驱动小计
- Windows Inf文件
- Spring-AOP更加细化的织入时机
- java实现矩阵乘法public class MatrixMultiply { //A=A*B 将相乘的结果赋给A public static void Multiply(double[][
- tensorflow linspace
- nodejs中使用async来对异步操作进行同步,避免多个异步同时启动引发连接错误