攻防世界reverse高手进阶 ----- gametime

8 篇文章 0 订阅

gfsj ----- gametime

昨天做了一道攻防世界的题key和这个gametime,都是动态调试的题。key还稍微简单一些,gametime稍微费点时间,记录一下。

昨天晚上可能是没进入做题的状态(疯狂为自己找借口),动态调试的时候稍微有点难受,就没有做出来,今天早上改完计网的题做了二十分钟就出来了。还是要专注一点呐!

废话不多说,看题。

先运行一下题目给的程序

在这里插入图片描述

大致就是遇到s就按空格,遇到x按x,遇到m按m,前面都还按的挺顺畅的,后面就快了,反应不过来,按错了就直接退出。甚至玩通关了之后出现了flag还没来得及截图就退出了,更不用说复制了。

就动态调试吧。

通过刚刚玩游戏发现程序有输入的地方,那么我们猜测这个题的做法:F8的时候程序一定会在某个地方停住,下断点,重新载入,F9,在下断点的地方按F7,进入跟踪,然后F8……,一直循环,直到发现有用的函数。

程序载入OD,F8单步走,走到不能动的地方,下断点
在这里插入图片描述
重新载入,F9,然后F7进入函数
在这里插入图片描述

然后一路F8,直到F8不能动,再下断点
在这里插入图片描述
再重新载入,F9到下的第一个断点处,现在我们可以把这里的断点去掉了。然后F9到第二个断点处。
重复上面的操作,直到程序出现…s
在这里插入图片描述
这里就是让我们输入了,看看汇编
在这里插入图片描述
我们在输入框那里输入空格,OD里面就可以继续F8了,再继续走就是让我们输入x/m的测试了。就按照之前的做法继续做……
之后就是正式的游戏环节,我调试的时候在输入空格、m、x的地方都下了断点。我们输入的时候可以发现,汇编指令那里有个jnz指令,输入的正确那么跳转就成功,输入的不正确就跳转不成功,然后进入一个提示失败的指令,如下图:
在这里插入图片描述
运行到要输入的时候就随便输也行,输错了就改ZF标志位,让jnz跳转成功,输入大概五六个之后程序就会显示flag
key is (no5c30416d6cf52638460377995c6a8cf5)
所以flag:no5c30416d6cf52638460377995c6a8cf5

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值