Cmdbar ---- [bp与bpx的区别]
bp与bpx的区别bp address,string -- Break with condition [对address或string下断点]
bpx string -- Break on all calls [对call string下断点]
下面以记事本为例进行说明,在此分别利用bp与bpx对函数CreateFileW下断.
bp CreateFileW
--------------------------------------------------------------------------------------------------
7C810800 >8BFF mov edi, edi ; bp CreateFileW ----断点位置[系统领空]
7C810802 55 push ebp
7C810803 8BEC mov ebp, esp
7C810805 83EC 58 sub esp, 58
7C810808 8B45 18 mov eax, dword ptr
0x7c810800就是函数CreateFileW的地址,大家可以利用工具dllexp.exe查看,显示的信息如下:
函数名称 : CreateFileW
偏移地址 : 0x7c810800
相对偏移地址 : 0x00010800
顺序数 : 83 (0x53)
文件名 : kernel32.dll
完整路径 : C:\WINDOWS\system32\kernel32.dll
类型 : 导出函数
bpx CreateFileW
--------------------------------------------------------------------------------------------------
Breakpoints
Address Module Active Disassembly Comment
01002653 Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
01002DAA Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
010033AA Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
0100423E Gall_NOT Always call edi
010043D0 Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
01004A07 Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
01004A5B Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
01004ED8 Gall_NOT Always call dword ptr [<&KERNEL32.CreateFileW>]
相信不用多说,大家已经知道bp与bpx的区别了吧
在OD里
bp 断是直接把入口改成CC
bpx 是哪里调用的函数 就哪里CC
两种区别在于
bp是 在 MOV EDI,EDI 类似的代码里下的断
bpx 是在CALL XXXX.XXXX 类似的代码的下的断XXX 表示某个已知dll的函数
下BPX断时 能找到 多个CALL函数代码
多谢指点,把bp和bpx的区别讲的很清楚。
bp CreateFileW -- 在函数CreateFileW的入口设置断点
bpx CreateFileW -- 在所有调用CreateFileW的地方设置断点 bp 断是直接把入口改成CC
bpx 是哪里调用的函数 就哪里CC
两种区别在于
bp是 在 MOV EDI,EDI 类似的代码里下的断
bpx 是在CALL XXXX.XXXX 类似的代码的下的断XXX 表示某个已知dll的函数
下BPX断时 能找到 多个CALL函数代码
多谢指点,把bp和bpx的区别讲的很清楚。
bp CreateFileW -- 在函数CreateFileW的入口设置断点
bpx CreateFileW -- 在所有调用CreateFileW的地方设置断点
学到了!!!!!!!!!!! 谢谢分享经验 小白,完全看不懂,不明觉厉! 学习了,谢谢! 这个谢谢分享 学习了 谢谢 学习了 非常感谢 感谢分享经验,还真的没怎么用过BPX 感谢学习了
页:
[1]
2