MENU

一次简单的PHP解密分析

April 9, 2020 • Read: 3004 • 教程

先来看看加密的文件

20200409185643.png

可以看出这是一个正常的 php 文件,只不过所有的变量名都是乱码,这个加密的文件变量名的字节部都在 ASCII 范围以外

调试


##准备 1、VS Code 2、安装PHP debug插件 ![QQ截图20200409191149.png][2] 3、按照 https://xdebug.org/docs/install 的说明安装 XDebug 插件 ##代码格式化 这个代码太乱了,需要格式化一下代码 所以用这个工具:
格式化一下代码 但是格式完之后,代码运行不起来了,这里我们只好保持它原来的样子不变了 ##开始调试 我们先换个编码 ![20200409190711.png][3] 使用编码 Western (Windows 1252) 打开 Windows 1252 是个单字节的字节集,不会出现任何 2 个字节被显示成 1 个字符的问题,其他的单字节集通常也可以 然后我们就可以下断点开始调试了 ![20200409192356.png][4] 开始调试之后,运行PHP文件 单步调试(F11) ![20200409192627.png][5] 一直调试可以看到函数变量 ![20200409192730.png][6] 往下一直调试,发现源码直接出来了 ![20200409192916.png][7] 对此我很想说:这加密就这水平??? 就没有一点点反调试?? #总结 对上面的加密就不做更深入的研究及编写自动解密脚本了,这个加密无非就是利用了eval、base64_decode、array_pop、substr等等函数进行一些简单的处理 若对PHP源码加密的话,不建议使用此类简单的混淆加密,推荐使用加密强度更高的加密,如:SourceGuardian、Swoole Compiler之类的加密 [1]: https://www.myitmx.com/usr/uploads/2020/04/3224688434.png [2]: https://www.myitmx.com/usr/uploads/2020/04/794260862.png [3]: https://www.myitmx.com/usr/uploads/2020/04/301439238.png [4]: https://www.myitmx.com/usr/uploads/2020/04/2865895683.png [5]: https://www.myitmx.com/usr/uploads/2020/04/2449681770.png [6]: https://www.myitmx.com/usr/uploads/2020/04/3594393026.png [7]: https://www.myitmx.com/usr/uploads/2020/04/3250170999.png
Last Modified: April 12, 2020
Archives QR Code
QR Code for this page
Tipping QR Code
Leave a Comment

已有 1 条评论
  1. 看上去加密得很好,没想到这么不经事