Windbg对过滤驱动DriverEntry函数下断点技巧

本文介绍了在Windows环境下,如何针对驱动程序的DriverEntry函数设置断点进行调试的方法。包括使用DeviceTree.exe和LordPE.EXE获取加载地址及入口点地址、利用Windbg的bu命令等四种实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法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命令用来设置一个延迟的、以后再求解的断点,对未加载模块中的代码设置断点。

实现原理:当指定模块被加载时,才真正设置这个断点。

对动态加载模块的入口函数或初始化代码处 加断点特别有用。

http://www.cppblog.com/flytosky2008gao/archive/2009/08/16/93477.aspx

程序名称:LordPE Deluxe 增强版 版 本:1.4 汉 化 人:cao_cong 联系方式:cao_cong_hx@yahoo.com.cn 使用说明: 这个工具大家应该也比较熟悉吧?这是另一款PE编辑工具,号称是“最好的PE文件修改工具”。这个增强版本是我在看雪学院上看到的,原来是看雪兄的大作。正好我以前汉化过这个软件(自己用的,没发布过),顺便套用一下以前的资源,把它给汉化了(里面所附带的工具基本上都汉化了)。可能有许多兄弟都比较喜欢用这个软件,这次发出来希望能给大家带来一点方便。这个增强版的主要更新(根据看雪兄的readme文件): (1) 为LordPE查看输入表部分加上搜索功能 (2) 为LordPE查看输入表部分加右键菜单(仅复制ThunkRVA/FirstThunk列). (3) 当点击LordPE查看输入表部分中"View always FirstThunk",保持光条在原来位置.(LordPE默认会将光条置到0行) (4) 修改FLC(File Location Calulator)窗口中各个文本框(VA,RVA,Offset)为只读属性,此时可以用鼠标复制里面的文本.(LordPE原来是将文本框禁止变灰,此时不可复制) 不过上面的第二条查看输入表部分的右键菜单我没看到。难道是我的系统(XP_SP2)有问题? 其它内容请看附带在内的readme.txt文件。LordPE的原版和增强版的原版我都放在英文原版文件夹中,大家可以进行比较。 声明: 1、此汉化软件是免费软件,请在转载时保留其内容的完整性! 2、此软件仅用于个人学习使用,禁止用于商业用途,否则后果自负! (1) 为LordPE查看输入表部分加上搜索功能 (2) 为LordPE查看输入表部分加右键菜单(仅复制ThunkRVA/FirstThunk列). (3) 当点击LordPE查看输入表部分中"View always FirstThunk",保持光条在原来位置.(LordPE默认会将光条置到0行) (4) 修改FLC(File Location Calulator)窗口中各个文本框(VA,RVA,Offset)为只读属性,此时可以用鼠标复制里面的文本.(LordPE原来是将文本框禁止变灰,此时不可复制) 文件列表: LordPE.EXE .............原版 LordPE_fix.EXE .............增强版 LordPlug.dll .............功能插件 LordPlug.dll_src .............功能插件源码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值