精华
phar加密文件破解教程

作者 : U9SEO 发布时间: 2020-07-23
至尊会员
phar加密文件破解教程 暂无演示
售价:
¥99 RMB
  • 普通用户购买价格 : 99RMB
QQ咨询
  • 软件终身可用
  • 免费售后咨询
  • 远程协助用户搭建
  • 永久免费更新
  • 拒绝二次付款
  • 承诺使用七天无效全额退款

特别声明:原创产品提供以上服务,破解产品仅供参考学习,不提供售后服务(均已杀毒检测),如有需求,建议购买正版!如果源码侵犯了您的利益请留言告知!如何获得 RMB

升级尊贵会员
享受全站VIP待遇

266+
会员已经加入

目 录

大部分的phar破解方案都会导致破解出来的phar项目文件乱码,下面这个方法能有效的解决这些问题。

什么是phar?

phar是php文件的一种加密方式。

phar解压无压缩的代码到文件夹

对于没有使用任何压缩手段的phar文件,使用下面的代码即可顺利解压出源代码到文件夹。文件夹是自动创建的。支持自动创建多层文件夹。这里的压缩手段,指的是创建phar文件时的函数方法compressFiles

PHP
$phar = new Phar('phar.phar');
//$phar->extractTo('phar2/source/');
$phar->extractTo('phar2/source/',null,true);

但是,如果参数不变,再次执行extractTo的时候,会提示错误,文件已经存在。这个时候,就需要设置extractTo的第三个参数$overwrite了,就是说是否覆盖原文件。而第二个参数$files可以是字符串,也可以是数组,用于指出解压的时候就解压哪几个文件。显然,这个参数顺序安排也是不合理的,显然$overwrite是最大的需求,而$files是其次需求,一般来说,用null来忽略掉这个$files参数的匹配项目。

  • https://doc.php.sh/zh/phar.extractto.html

注意: 但是上述代码对于使用compressFiles方法的phar文件来说,这就是个陷阱,掉进去之后,不要忘记挣扎几下。对于使用了压缩手段的phar文件来说,上述代码可以解压到相关文件,但是相关文件打开之后全部是乱码或者空白。

phar加密文件破解教程-U9SEO
如何解包还原一个phar文件(图2-1)

改进版解压代码

对于使用了压缩的phar文件的解压,这里有个不是太合适的poc。因为网上流传的代码中,都没有对压缩版的phar进行特殊处理。所以,在这里,苏南大叔认为可能也许是自己使用的php版本的bug,但是如果您也有类似的问题,不妨试试我这个不合适的poc。

phar加密文件破解教程-U9SEO
如何解包还原一个phar文件(图2-2)
PHP
$phar = new Phar('phar.phar');
foreach ($phar as $file) {
  file_get_contents($file);
}
$phar->extractTo('phar2', null, true); //提取一份原项目文件目录

就是在上述代码的基础上,增加了个遍历文件加file_get_contents,乱码就会正常。显然,这个poc不是很合适。但是,确实达到了我们的目的。当然,苏南大叔也实验了decompress()decompressFiles()这两个方法,并没有得到想要的结果。当然,如果您有什么好的见解,请留言给我。谢谢。

直觉上,这个extractTo函数调用过程中,可能存在着一个异步的解压过程。所以这个时机控制的不是很好,就导致了上述莫名其妙的问题了。

转格式为zip,再解压zip

这个代码仅仅是个途径参考,不如上边的方案来的直接。我们先把phar.phar,转化格式为phar.zip,然后再解压zip文件,得到代码。如果得到的代码还是乱码,那么轻参照上一条方案的poc

newsn.net:这里是【评论】可见内容

结论

phar代码的解包过程,似乎还是要费点周折的。在试图用其他函数方法的解包的时候,也有一些莫名其妙的问题存在。但是对于我们最基本的解包需求来说,本文的内容已经足够了。

如果您想了解更多有关phar的经验文章,欢迎您点击苏南大叔的更多经验文章。

另外一种方法:

在线上传phar文件就能进行破解。

https://unphar.zdhybk.com/

发表评论