首页
社区
课程
招聘
[求助]问一个OD脚本 RUN的问题。
发表于: 2013-8-29 16:26 5403

[求助]问一个OD脚本 RUN的问题。

2013-8-29 16:26
5403
var eiprun
loop:
OPCODE eip
     cmp 0,$RESULT_2
     je labb
        ATOI $RESULT
        ifeq $RESULT,c2
        mov eiprun,eip
                bp eip
        cmt eip,"return xxxx"
                run
        bc eiprun
        endif
labb:
    sti
jmp loop

其中这里
        bp eip
        cmt eip,"return xxxx"
        run
bp eip后 run应该会停下来,为什么没停下来来还是单步在走?

使用run以后控制权怎么交回给脚本??
如果是单步sti很好理解,一步步走就可以了。
求解释一下

或者说我想在RETN XXX这里停下来。等我按F9时再继续脚本该怎么写呢???

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
神经了

sti -> eip

bp eip           //  这里问题就出现了,如果这个函数返回只使用一次,你获取的是当前 eip ,而又反过来
                         对现在地址断点,如何能继续获取控制权 ??????????????????

最后劝大家,不要再使用 sti  。。。。。。。。。。。。。。。。。。。 20 年后的电脑跑现在的程序或者还可以试试
2013-8-29 18:02
0
雪    币: 1392
活跃值: (4867)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
3
脚本走到这条语句的时候,这条语句已经执行完了吗?
如果没有执行。那么
bp eip
cmt eip,"return xxxx"
run
那么这个run后应当会断下来,
至于sti速度问题,暂时还没有考虑,只是测试一下,第一次写脚本。难免有犯傻的时候对吧。。
2013-8-29 18:50
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
抛除 当前指令就是  ret xxxxx 外,其它情况下都是先执行了 sti 的

脚本不是你写的  ????????????   如果不是,这样的脚本马上删除吧

var eiprun
loop:
OPCODE eip
     cmp 0,$RESULT_2
     je labb
  ATOI $RESULT
  ifeq $RESULT,c2                      然后才比较啊 B
  mov eiprun,eip
                bp eip
  cmt eip,"return xxxx"
                run
  bc eiprun
  endif
labb:
    sti                                                        A  先这行了
jmp loop
2013-8-29 19:52
0
雪    币: 1392
活跃值: (4867)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
5
var eiprun
loop:
OPCODE eip
     cmp 0,$RESULT_2
     je labb
  ATOI $RESULT
  ifeq $RESULT,c2
  mov eiprun,eip
  bp eip
  cmt eip,"here is return"
  run
  pause
  bc eiprun
  endif
labb:
    sti
jmp loop

大概是我没有理解你的意思吧,流程应该没错,我单步一步步看了,并没有错sti也是一步步执行下来的。总之我在run后面加了个pause  run后 脚本停了,F9下一次运行到这里就能断下来。
这里要多次运行到的,所以不担心不会运行到这里。
前面测试了一下,主要是如果在EIP这条语句上下断,然后F9是不会断下来的,要下一次才能断下来。
先谢谢鸟
2013-8-29 21:41
0
游客
登录 | 注册 方可回帖
返回
//