SMC技术
本帖最后由 ollydebug 于 2015-2-21 20:56 编辑所谓SMC,意思就是动态修改程序,一般用于带壳破解或者程序解码,下面我用几个程序进行分析讲解,首先是这个程序。
这个是2014CM大赛第一组那个叫做LCG的人做的(http://www.52pojie.cn/forum.php?mod=viewthread&tid=298032&extra=page%3D1%26filter%3Dtypeid%26typeid%3D215),刚好用他的讲解。首先OD载入,回溯到这个地方,段首下段。
经过分析,发现,messagebox的地址每次都不一样,看来他是解码程序,每次动态获取地址、解码到获取的地址,这时就要用SMC技术了,首先找到解码call,是这个call。
进去之后发现这个跳转总是跳,那么中间的数据也应该是没有用的,就在这个地方跳到空地址,这样还不用还原代码。
将他跳到空地址。
咱们可以看到,这时edi只要加上F49就到了可以跳过用户名为空的弹窗的跳转。
那咱们只要现将edi加上F49,再将要改的数据修改到edi的地址的代码就可以了,以下是代码。
同理,根据edi的偏移就可以找到剩下的密码为空,成功,失败的跳转,这是全部代码。
最后再跳回去。
保存之后,CM完美破解。
这只是第一个程序,我先去玩了,以后我还会编辑的,大家不要走开哦。
榻榻米 发表于 2015-2-21 21:55
感觉不够详细 补码部分为何那样分开修改数据看不懂 大牛能否解释下?
你修改的数据就不在一起,当然分开 19nuclear91 发表于 2015-2-22 17:30
楼主的帖子都挺不错的 支持了
顺便问一句 为什么你能拿到这个id
多层SMC快出了 大牛就是厉害 学习一下 SMC难搞...等着教程.... 感觉不够详细 补码部分为何那样分开修改数据看不懂 大牛能否解释下? 楼主的帖子都挺不错的 支持了
顺便问一句 为什么你能拿到这个id 19nuclear91 发表于 2015-2-22 17:30
楼主的帖子都挺不错的 支持了
顺便问一句 为什么你能拿到这个id
我的ID不好么
页:
[1]
2