[re]简单逆向:2020网鼎杯白虎组re 恶龙 wp

   日期:2020-05-17     浏览:160    评论:0    
核心提示:[re]简单逆向:2020网鼎杯白虎组re 恶龙 wp题目分析题目描述:这是一个与史莱姆和恶龙战斗的故事,请战胜三头恶龙,取得flag。张三长老说,试图patch这个程序的人会得到错误的flag…得到题目之后,发现是一个linux的逆向。查看一下程序功能:结合之前的描述,感觉是一个游戏题目,连续战胜三次boss,便是成功,正常套路,都要打小怪升级,然后买装备然后打boss,但,我选择1. 和史莱姆战斗,然后死了…逆向分析程序:程序主体就是,只要boss还存在(一共三个),那么就会指向dro

[re]简单逆向:2020网鼎杯白虎组re 恶龙 wp

题目分析

题目描述:这是一个与史莱姆和恶龙战斗的故事,请战胜三头恶龙,取得flag。张三长老说,试图patch这个程序的人会得到错误的flag…

得到题目之后,发现是一个linux的逆向。查看一下程序功能:

结合之前的描述,感觉是一个游戏题目,连续战胜三次boss,便是成功,正常套路,都要打小怪升级,然后买装备然后打boss,但,我选择1. 和史莱姆战斗,然后死了…

逆向分析程序:

程序主体就是,只要boss还存在(一共三个),那么就会指向dround(也就是菜单),然后三次之后就会输出flag。

根据不同选择进入不同函数,发现和史莱姆战斗的计算,史莱姆的战斗力永远比你的战斗力高,也就是说你永远打不过,你的初始战斗力是0x64,三个boss的战斗力分别是:

商店可以用2金币提升1战斗力。

题目提示不要patch程序,否则会得到错误的flag,那么我们就不patch,直接在程序运行的时候进行战斗力比较的时候修改我们的战斗力即可。

解题

三处断点分别为:

0x4015F9

0x40165C

0x4016BC

断住这三个地方,然后把eax的值改为比比较的数大即可。注意不要改战斗力的变量,因为后来flag的输出有可能用到,我们直接改比较用的寄存器就可以了,然后会输出flag:

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
更多>相关资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服