前不久,苏南大叔得到了一份某系统的源码,功能上写的还是蛮有意思的。不过,有些功能上的限制。出于学习其思路的目的,苏南大叔研究了一下它的源码,研究过程中,获益匪浅。

本文中,虽然苏南大叔会描述如何破解该系统的过程,但是仅仅叙述一下相关思路,并不会涉及该php系统的名称及关键性的破解代码。当然关于这款源码的加密方式:魔方二代crane加密。这个也是苏南大叔自己瞎猜的,也许不是呢?对吧?哈哈。

苏南大叔:改写 class 方法逻辑,破解魔方二代加密的某 php 源码 - 魔方二代
改写 class 方法逻辑,破解魔方二代加密的某 php 源码(图4-1)

所以,大家还是有钱的帮个钱场,支持一下正版软件。

被加密的php文件描述

因为该php源码:“不需要任何的加密扩展,就可以直接运行”。所以,这个php代码的加密方式,目测为php混淆级别的加密概念。本以为可以通过关键函数hook手工diy逆向出来,但是仔细查看后,苏南大叔居然发现有些束手无策的感觉。

后来通过关键词VIRTUAL MACHINE ERROR : Access violation at address,找到了这个加密算法的源头是魔方加密,后来又通过某专业破解网站得知,该源码的加密方式是魔方二代crane的加密算法。魔方加密的网站地址如下,相关文件都是通过在线加密的。

苏南大叔:改写 class 方法逻辑,破解魔方二代加密的某 php 源码 - mofang
改写 class 方法逻辑,破解魔方二代加密的某 php 源码(图4-2)

关于魔方二代的加密,看了网上的几个相关帖子。看帖主的poc,都把汇编搬出来了,苏南大叔果断放弃。估计以苏南大叔的汇编水平,这东西一个月都搞不出来,所以只能另辟蹊径。

苏南大叔:改写 class 方法逻辑,破解魔方二代加密的某 php 源码 - mofangc
改写 class 方法逻辑,破解魔方二代加密的某 php 源码(图4-3)

通过对加密代码的格式化分析,大概看到了这个文件里面一共有两个类:一个是主体权限验证相关的类A,另外一个是dede模板的第三方解析类。类定义及类方法都是可以清晰看到的,但是方法的主体逻辑都是未知数。大概类似是这样的结构:

class A{
  function check_auth(){
    //下面是一堆密文
    //¥#!@#¥#@……%¥……%¥#……
    //`VIRTUAL MACHINE ERROR : Access violation at address
  }
}
class dede{
    //.....
}

更高级简单的解密方法

市面上流出的魔方二代解密的程式,大家就不要实验了。或者说,您做好了思想准备再执行吧。苏南大叔试验后,在桌面上生成了几千个临时文件,瞬间死机,估计是被动过手脚的。

网络上有个流传的网站,可以付费破解魔方二代的加密,试了一下,物美价廉。但是破解的结果似乎是有问题的,并不完美。对于本文来说,代码中有两个php类,第一个完美破解。但第二个类出了问题,表面上看起来ok,却实际不能使用。可见,魔方二代加密的水平还是很高的。

newsn.net:这里是【作者】可见内容

总结

最终的结果上看,这个加密文件是被完美破解了。因为手工修复了第二个类的缘故,加深了对这个系统的理解程度。一共使用了两种途径,破解该源码。分别是:

  • 第一个途径,保留被加密的php文件,只是改写了关键性的class的方法。
  • 第二个途径,通过付费破解的方式,拿到了一个不完美的明文php,然后手工修复了并不完美的相关逻辑。

本文仅仅记录相关破解思路,并没有涉及该系统名称及关键性的破解代码。同时,对于友情出镜的魔方加密二代crane算法,苏南大叔表示非常高深莫测,如果能把类名和方法名也都加密掉的话,无疑是最好的。

更多加密解密的相关文章,请点击苏南大叔的博客文章。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接作者。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

 【加群】加入QQ群【175454274】和大家一起讨论这个问题

 【源码】本文代码片段及相关软件,请点此获取

 【绝密】秘籍文章入口,仅传授于有缘之人   php    crack

本站的忠实读者小伙伴,正在阅读下面这些文章: