4、游戏过关

本文阅读 4 分钟
首页 代码,C/C#/C++ 正文

0x01、题目:游戏过关

img

0x02、WP

1、右键链接,点击新建标签页打开链接,保存附件 img 2、开始了: WP 一、题目分析过程:

  1. 首先打开可执行文件,如下图: img
    <li>由游戏题目可知,我们要输入1到8,这八个数字。而0是重置功能 分析:①很明显这个游戏就是,答题者输入数值,回显flag。 ②这个就需要对答题者输入的内容与正确的答案就行比对,或者对于答题者输入正确的值时候,自动跳转到有flag的函数并回显</li>

二、 题目解题过程: 第一步:使用OD软件,打开这个可执行文件; //OD软件可以编辑可执行文件 img

//结果如上图所示

第二步:右击代码区的空白,点击超级字串参考的查找UNICODE img

img //结果如上图所示

第三步:如第二步的结果所示,我们看到了done!!!the flag is的字样,首先我们双击它,其次,我们再往上滑动,发现了入口:0071E940

① 首先:

img

② 其次:

img

第四步:我们点击一下,这个入口处:0071E940 ,我们会发现,这个入口的跳转来自00717AB4;

img

第五步:我们找到00717AB4,点击一下它,我们会发现它的本地调用来自0071F66C

img

第六步:我们转到0071F66C后,进行观察,我们可以进行修改最终8个JNZ判断的跳转,也就是把跳转到flag函数入口的上一个跳转的上一个本地调用地址00717AB4 写为这个地址0071F671的下一跳转 //也就是在:0071F671处把下一跳改为00717AB4

img

第七步:这个可执行文件经过了OD的修改之后,我们要保存。那么问题又来了。。。 首先:我们要知道的是,保存的原则: 修改代码区,保存代码区 修改数据区,保存数据区

其次:开始保存咯。。。由于我们修改了代码区的地址,所以我们右击代码区的空白处,单击复制到可执行文件的选择

img

最后:右击新弹出的一个窗口的空白处,单击保存文件

img img

第八步:我们打开保存这个可执行文件的目录,会发现多出了一个文件,正常情况,不用担心,点击可执行文件运行即可

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200119205832399.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NTU1MjI2,size_16,color_FFFFFF,t_70)

第九步:我们直接输入一个1到8的随机一个数字,我们会发现弹出了flag //这是因为,刚刚的8个判断我们都跳转到了0071F671,而00717671跳转到了00717AB4,而00717AB4跳转到了0071E940,而0071E940是flag函数的入口地址 img //其实除了输入1到8这八个数字,输入0也可以。。。。

========================》》》》》》》 Flag:zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t}

0x03、Flag

zsctf{T9is_tOpic_1s_v5ry_int7resting_b6t_others_are_n0t}

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/qq_45555226/article/details/104045128
-- 展开阅读全文 --
KillDefender 的 Beacon 对象文件 PoC 实现
« 上一篇 02-09
Web安全—逻辑越权漏洞(BAC)
下一篇 » 03-13

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复