攻防世界逆向高手题之gametime

99 篇文章 32 订阅

攻防世界逆向高手题之gametime

继续开启全栈梦想之逆向之旅~
这题是攻防世界逆向高手题的gametime
在这里插入图片描述

下载附件,照例扔入exeinfope中查看信息:
在这里插入图片描述

32位无壳,运行一下程序看看主要信息:
在这里插入图片描述

说实话我一开始没看懂怎么玩,所以扔入IDA32中查看伪代码信息,有main函数看Main函数:
在这里插入图片描述

哇,眼花缭乱,代码太多了。这里积累第一个经验,游戏题一定要玩懂才行,没那么难玩的,如果游戏文字跳转太快看不清,很难玩,就看着反汇编代码来玩。用OD等动态调试器在游戏结束时保持最后界面,以此来用最后结束时的界面信息根据伪代码判断在哪里退出的,从而找到第一个判断函数。
.
.
上OD动态调试:
在这里插入图片描述
.
.
终于可以看清游戏规则了,出现s就按空格,不然就退出:(后面还有按x和m的),在IDA伪代码中查看对应信息:
在这里插入图片描述

终于在众多代码中找到判断函数了,双击跟踪:
在这里插入图片描述

结合刚才结束界面的回显信息,进一步缩小了判断函数的范围。然后这里积累第二个经验:游戏类题目,有些是存储型flag,就是flag本来就在那里,你解出游戏就会显示。而有一些是与用户输入相关的生成型flag,就是用户通关的每一步影响着flag的生成,比如通一关给一部分flag这样。

这道题明显是后者,但是生成型flag中又要看输入到底怎么影响flag生成,如果是那种以通关数生成flag的话,我们改一下判断条件就可以全部通关了。但如果是那种通关的时候要靠用户输入字符,并考输入的对应字符来生成甚至是加密后再生成一部分flag的话,这种题就要一个个找到对应的通关字符然后再逆向逻辑才行。

而这题比较简单,是只判断通关数即可生成flag,为什么我会知道呢,其实我猜的。(笑~) 所以我们用OD修改判断条件即可。
.
.
.
看判断函数的反汇编代码:
在这里插入图片描述

在OD中修改对应内存地址的反汇编代码,你也可以直接用IDA调试:
在这里插入图片描述

前面一切正常,因为但是后面出了问题:
在这里插入图片描述

前面正常是因为下面三个都是同一个判断函数:
在这里插入图片描述
.
.
后面出错就去后面找,发现还有三个判断函数:
在这里插入图片描述
.
.
老样子双击跟踪找汇编代码:
在这里插入图片描述
在这里插入图片描述
.
.
继续运行程序,成功输出:
在这里插入图片描述
.
.
总结:

1:
这里积累第一个经验,游戏题一定要玩懂才行,没那么难玩的,如果游戏文字跳转太快看不清,很难玩,就看着反汇编代码来玩。用OD等动态调试器在游戏结束时保持最后界面,以此来用最后结束时的界面信息根据伪代码判断在哪里退出的,从而找到第一个判断函数。

2:
这里积累第二个经验:游戏类题目,有些是存储型flag,就是flag本来就在那里,你解出游戏就会显示。而有一些是与用户输入相关的生成型flag,就是用户通关的每一步影响着flag的生成,比如通一关给一部分flag这样。

这道题明显是后者,但是生成型flag中又要看输入到底怎么影响flag生成,如果是那种以通关数生成flag的话,我们改一下判断条件就可以全部通关了。但如果是那种通关的时候要靠用户输入字符,并考输入的对应字符来生成甚至是加密后再生成一部分flag的话,这种题就要一个个找到对应的通关字符然后再逆向逻辑才行。

而这题比较简单,是只判断通关数即可生成flag,为什么我会知道呢,其实我猜的。(笑~) 所以我们用OD修改判断条件即可。

解毕!敬礼!

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沐一 · 林

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值