shopnc是安全且出众的php商城程序. 官方提供免费下载以及仅开放前台部分源码.
shopnc的使用是免费的,但仍旧保留它的版权.
对商城程序来说,要想去掉它的版权,则需要1500RMB.其他服务则另计.
好了,纠结的事情来了---------------->
偶然从别人那里获得一套shopnc的授权商城程序.那就直接拿来用吧..
本地搭建ok,于是托到空间上,买米,有模有样的开始做吧...
哇.纠结的事情还是来了,shopnc是限制其他域名访问的,也就是说
仅允许127.0.0.1,localhost,xxxxxxx访问,其中的xxxxxxx为授权域名,当然了,你想换域名,再掏1500.
其实,shopnc的核心文件是zend加密的,作为判断的程序位置在
"../classes/core/baseinitialize.core.php"
dezend后自然可以看到版权开关,以及授权域名的值.这个文件中的程序封装在一个叫做 _getSysVersion的class里面.
那改了就是了呀.
哎. 事情没有想象的这么简单,shopnc对自定义变量名,函数名打开了混淆,按理说,混淆也无所谓,可是...事情没有这么简单.
毕竟是基于面向对象的方式来开发的,这个叫做_getSysVersion的类继承了一个空类.
其他程序调用仍然继承....这么一来,如果翻译混淆,那么,几乎要重写它的内核. 为啥要翻译混淆呢? 那是因为呀...因为dezend出来的他的混淆名不完整,在16进制方式查看的状态下就可以看到. 因为zend后的程序,部分变量名混淆后,在内存中使用的时候是以混淆后的名称来使用的.
翻译混淆? 那就翻译哈....
你开始就结了没有呢?
靠.....我自己起的名字叫做翻译,其实zend这个混淆的名称是不可逆的,也就是说,只有自己去生成字典.才有可能破解.
汗.... 貌似几十个名称,我都要一一破解么?
更何况, zend逆向的结果,如果是一个文件,基本上修改之后还是可以使用的,偶尔会蹦出一些逻辑错误.如果整个内核都去逆向...哎...哭吧.
我尝试以直接Dezend的文件使用,结果除了值看到url的判断外.我还是无法登陆后台.
..
当然了,以本地localhost的方式访问虽然可以登陆,但是生成的静态.哎...
他的版权判断也仅仅是这个文件中的一个值.
谁有空一起来重写100多个文件呢? 有点幻想了...哈哈
不管怎么说,这下也熟悉了shopnc的核心结构.可是...买的米...也不能让它废弃.
貌似就是这个, shopnc 把它的整个内核都加密了,并且为了对付dezend 做了特别处理,技术细节看不懂, 不能用在uchome上是肯定了的....不能把uchome 的函数名给混淆了..... |