首页 > 其他 > 详细

reversing.kr replace 之write up

时间:2017-08-07 12:59:51      阅读:711      评论:0      收藏:0      [点我收藏+]

好似reversing除了前几个容易些,后面的都很难的。看wp都很困难。首先wp提示crtl+n查看程序所有函数,并且找到了测试函数:

技术分享

然而宝宝我换了n多个od都没有得到和作者同样的结果:

后来运行程序后再用ctrl+n神奇的出现了:

技术分享

那我们就按照wp一步一步来:跟进目标函数,我们发现了如下目标函数:

技术分享

f8一直向下执行:

技术分享

我们发现程序走到这里就执行不下去了,这次我们输入0,观察此时对应的EAX=0x611605cb,于是我们分析得到由于我们输入错误所以eax到了错误的地址,所以eax=输入+0x611605cb,我们再回过头来看下最初的程序:

技术分享

由再上面一张图eax为0x90查找资料0x90表示为nop指令。如果我们把eax覆盖到ascii前面两条jmp指令,那么我们的程序就可以执行到下面的指令了,所以我们输入的值为0x100401071-0x611605cb=2687109798:

技术分享

这题真的很不简单!

 

reversing.kr replace 之write up

原文:http://www.cnblogs.com/liuyimin/p/7298239.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!