Cghang

MZPHP加密解密分析
文件分析图一为加密文件开头 当然可以修改图二后边还会出现gzinflate(substr())这个通过图一图二即可...
右键或长按保存图片
02
2018/06

MZPHP加密解密分析

文件分析

1.png
图一为加密文件开头 当然可以修改
2.png
图二后边还会出现gzinflate(substr())这个
通过图一图二即可判断是否是mzphp加密的文件了
十六进制是这个加密程序的最大掩护之一,绝大多数编辑器打开这个php文件后,都是不能正确理解的,连php的语法都不能符合。通过Notepad++将文件转换为UTF8格式即可进行编辑
3.png
通过加密后的文件分析 可以发现其将变量全部存储在$_SERVER $_GET $_GLOBALS中 通过加密多个文件分析可得

乱码分析

4.png
图四中箭头所示为随机添加的字符 没有任何用处 除了混淆你的思路
error_reporting(E_ALL^E_NOTICE); 这句话的意思为提示所有错误 除了NOTICE错误
所以才不会显示图示中乱码的错误信息 去掉保存 再运行php就会显示处NOTICE信息

    function gzdecode($data)
    {
        return gzinflate(substr($data,10,-8));
    }
}

这2个函数的功用就是给用函数gzencode( https://doc.php.sh/zh/function.gzencode.html )压缩的数据,进行反向操作,解压缩专用的函数。说白了,就是大家常用的gzip功能。
我们先打印输出一下$_GLOBALS中存储的变量
QQ截图20180605183546.png
打印输出内容为
print.png
可以看到我们的变量值 函数名..等等都在里面
接下来就只需要一个一个替换回去了 要注意的是
再把十六进制得变量名替换为$var 因为无法还原变量名称

Last modification:June 5th, 2018 at 06:41 pm
If you think my article is useful to you, please feel free to appreciate

One comment

  1. xx3122

    我有加密文件/程序,能解密么,付费

Leave a Comment