能力值:
( LV12,RANK:360 )
|
-
-
2 楼
应该是在堆栈里面的返回地址上下断吧!进CALL时把返回地址藏进来,到要返回时在显示,就可以Pass Atl+F9
ps:经测试,的确是这样,你随便进一个CALL 然后修改下返回地址,然后按ATL+F9 就会直接跳到你修改的地址!
|
能力值:
( LV8,RANK:130 )
|
-
-
3 楼
你说的这个我倒是清楚,但还是有点想不明白,出现消息框,暂停,执行到用户代码 确定之后 EIP直接到MessageBox的下一行.有一点很奇怪. 就是在确定之前,你检查断点(就是OD上面的B),那里面有一条叫做One_shot 闪得很厉害,不知道怎么原因!
|
能力值:
( LV12,RANK:360 )
|
-
-
4 楼
但还是有点想不明白,出现消息框,暂停,执行到用户代码 确定之后 EIP直接到MessageBox的下一行
这个倒是新发现,但调试一下你会发现,出现信息框后暂停,EIP会在系统领域(信息框消息循环中),堆栈中有不少返回地址,但有不少是系统领域的返回地址,而ATL+F9是执行到用户领域,堆栈中第一个用户领域的返回地址即是调用MessageBox的下一行
One_shot 在哪?上图~
|
能力值:
( LV8,RANK:130 )
|
-
-
5 楼
先上个图,你可以自己试一下,这也是我最近才发现的,很奇怪!
而且那个地址不是固定的,老是在跳变,你自己跟一下就知道了
|
能力值:
( LV12,RANK:360 )
|
-
-
6 楼
[QUOTE=liuqiangni;953952]先上个图,你可以自己试一下,这也是我最近才发现的,很奇怪!
而且那个地址不是固定的,老是在跳变,你自己跟一下就知道了[/QUOTE]
我用的是中文版的,不知道One_shot是什么状态
|
能力值:
( LV8,RANK:130 )
|
-
-
7 楼
中文的也有啊 上个图
|
能力值:
( LV12,RANK:360 )
|
-
-
8 楼
[QUOTE=liuqiangni;953960]中文的也有啊 上个图
[/QUOTE]
只一次是什么断点?怎么下的?没用过~
|
能力值:
( LV8,RANK:130 )
|
-
-
9 楼
断点不是我下的,是OD自己下的,我点执行到用户断点,然后Breakpoint 里面就会有这个,而且还老跳变
|
|
|