苏南大叔挑选wordpress皮肤的时候,发现了个挺精致小巧的皮肤。不过里面有一些不太和谐的地方,想给它修改掉,这个时候,按着既往经验,居然搜索关键词语时全部失败没找到。苏南大叔才忽然意识到:这是个加密的wordpress皮肤。

虽然对于php程序来说,加密的代码并不多见。90%以上的php都不是加密的,但是并不排除存在加密的php的可能性。

本文讲述的内容是:enphp2算法加密的php代码的解密思路。

基本文件描述

究竟是那些文件是加密过的呢?NetBeans非常“智能”的出卖了那些加密的PHP文件。

苏南大叔:enphp2算法加密的php代码的解密思路 - netbeans_spy
enphp2算法加密的php代码的解密思路(图6-1)

经验上来说,只要这个php不是必须在某个dll或者so扩展下面才能运行的话,那么这个php就存在着手工解开的可能性。按理说,php解密和js解密一样,都不外乎eval的那些思路。不过,今天看到的这个加密,却非常特别,猛一看上去,和仔细看上去,都觉得这段代码绝无解密的可能性。但是确实正确执行了,这个就让人十分不解了。这代码加密的原理究竟是什么呢?

苏南大叔:enphp2算法加密的php代码的解密思路 - notepadpp_enphp2
enphp2算法加密的php代码的解密思路(图6-2)

折腾了好半天,得出了一些结论。不过我要事先声明一下:

首先,我并没有解开这个加密(请该算法作者和该皮肤作者放心)。其次,仅仅为学习的目的,分析了该代码的加密方式。这些加密算法都会有一些奇淫异巧的技能点的。苏南大叔在这里,就get到了好几个罕见的php技能。关键技能点如下:

notepad++

在所有现有的编辑器全部沦陷的情况下,notepad++胜利完成了任务。通过“编码=>以utf8 noboom编码”实现了“照妖镜”的功效。然后,这种情况下,任何复制粘贴功能也全部失效。复制粘贴得到的东西,已经物似人非。这个时候,notepad++的hex editor插件,十六进制编辑器,完美的完成了任务。(听上去非常像软件破解了吧?软件破解找到爆破点之后,就是编辑十六进制,用同等数量的字符进行填充。)

notepad++的安装及插件安装的教程,请点击这里:

苏南大叔:enphp2算法加密的php代码的解密思路 - notepad
enphp2算法加密的php代码的解密思路(图6-5)

上述这些技能点get到之后,这段看似不可能完成的任务,也就变得可以完成了。不过,我没有破解掉它。大家都是程序员,程序员何苦要为难程序员呢?对吧?

题外话:

去这个enphp2加密算法的作者的开源代码git上面,仔细翻了翻。以为里面会有它加密的算法在里面,结果...... 果然,他的思路是saas。赞,苏南大叔在这里只能给他狂点赞了,一万个赞奉上。

苏南大叔:enphp2算法加密的php代码的解密思路 - enphp2
enphp2算法加密的php代码的解密思路(图6-6)

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

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

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

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

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