首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
付费问答
发新帖
1
0
[旧帖]
[求助]请问在ODBG中如何知道上一条指令从哪里来?
0.00雪花
发表于: 2008-9-30 01:15
3765
[旧帖]
[求助]请问在ODBG中如何知道上一条指令从哪里来?
0.00雪花
qjwn
2008-9-30 01:15
3765
调试一个程序的过程中,中断在了一个地址处,这时我想知道这指令的上一条指令是从哪里来的该怎么做?堆栈中没有可用信息,因为这条指令应该是从哪里跳转来的,所以也不能执行到返回,ODBG能记忆上一条指令地址就好了。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
收藏
・
1
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
5
)
kingdomer
雪 币:
208
活跃值:
(11)
能力值:
( LV2,RANK:10 )
在线值:
发帖
1
回帖
30
粉丝
0
关注
私信
kingdomer
2
楼
DOS时代16位的 Turbo Debugger 有这个功能,能倒着执行
后来的32位调试器都没有这个功能了。笨办法就是反编译,然后在汇编程序中找,只要不是跳转到内存或寄存器的,就能找到
2008-9-30 08:41
0
qjwn
雪 币:
201
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
8
回帖
36
粉丝
0
关注
私信
qjwn
3
楼
谢谢,不过这个程序反编译肯定不能找到的,首先是它使用了动态解密代码,然后这条指令前面的指令肯定是使用的寄存器跳转,难道就没有一点办法吗?其实OD在中断时将上一条指令显示出来应该没有多大困难吧?
2008-9-30 11:26
0
hyperchem
雪 币:
295
活跃值:
(141)
能力值:
( LV4,RANK:50 )
在线值:
发帖
9
回帖
128
粉丝
1
关注
私信
hyperchem
1
4
楼
用OD的Run跟踪功能~
2008-9-30 11:33
0
sessiondiy
雪 币:
2067
活跃值:
(82)
能力值:
( LV9,RANK:180 )
在线值:
发帖
37
回帖
3244
粉丝
6
关注
私信
sessiondiy
4
5
楼
可能的话, 写个脚本. 在快接近时断下来. 2 种方法:
1. 单步, 判断流程转移的opcode, 若是下一步到target则记下目前eip
2. 单步 if EIP = Target { Show PreEIP }
else PreEIP = EIP
方法2比较好实现
2008-9-30 11:35
0
qjwn
雪 币:
201
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
8
回帖
36
粉丝
0
关注
私信
qjwn
6
楼
多谢楼上几位,虽然我从未写过脚本,不过我现在就开始学习。
2008-9-30 13:46
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
qjwn
8
发帖
36
回帖
10
RANK
关注
私信
他的文章
[求助]请教OD调试的问题
4163
[求助]关于OD硬件写入断点的疑惑?
7047
[求助]被调试进程某函数不能正确返回到调用它的地址
4787
[求助]请问在ODBG中如何知道上一条指令从哪里来?
3766
[求助][求助]请问如何对进程创建新FORM下断?
3049
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部