您当前的位置:首页 > 计算机 > 逆向分析

BugkuCTF-游戏过关

时间:12-20来源:作者:点击数:

首先将exe文件下载下来,打开看一下:

玩游戏
n是灯的序列号,m是灯的状态
如果第n盏灯的m是1,它就开,如果不是,它就关
起初所有的灯都关上了
现在你可以输入n来改变它的状态
但是你应该注意一件事,如果你改变了第N个的状态,(N-1)个和(N+1)个的状态也会改变
当所有灯都亮起时,旗子就会出现
当所有灯都亮起时,旗子就会出现
现在,输入n
输入n,n(1-8)

玩了半天也没过关,,,然后将这个exe拖进OD分析:

先搜一下flag字符串试试:

找到了flag字符串,跟过去看看:

这玩意看着好像是一个函数,应该是游戏成功之后会跳转到这个函数输出flag,再往上跟,看看是从哪调用的:

找到了调用函数,接着往上分析,发现上面几个jcc指令全部指向0114F671这条指令,这应该就是我们输入的数字时跳转的地址。

要是我们将这个地址里的指令改成直接跳转到输出flag的那个函数这样不管我们输入什么数字不就都可以直接拿到flag了嘛。

回头看一下输出flag的那个函数的地址是:0114E940

改完之后直接运行这个exe,然后随便输入一个数字:

flag是拿到了,不过,,,emmm,,,程序好像崩了。。。。。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门