使用 YAK Pro - PHP Obfuscator 混淆 php 代码 示例为PHP8 + larveal10 框架代码

本文介绍了如何使用YAKPro-PHPObfuscator工具对PHP8和Laravel10框架的代码进行混淆,以保护源代码免于他人理解和修改。文章详细讲解了安装步骤、Laravel框架的特殊处理以及配置要求。
摘要由CSDN通过智能技术生成

使用 YAK Pro - PHP Obfuscator 混淆 php 代码 示例为PHP8 + larveal10 框架代码

什么是Php混淆?

当您有一个要发布一个php项目时,往往会吧代码全部部署到服务器上;出于任何原因,您可能希望其他人不理解、修改或调整您的软件。但是又需要被PHP理解所以我们只需要做到混淆代码让人难以理解。

请注意

yakpro-po 2.x 在PhpParser 4.x上运行
它将在php >= 7.0 上运行,混淆 php 5.2 到 php 7.3 的代码

如果您正在运行 php 5.3 或更高版本,
请使用不受支持的 yakpro-po 1.x,它适用于PhpParser的1.x分支

安装

本次使用的是centos 作为基础环境 以及使用的是宝塔默认安装的PHP

  1. 首先需要使用git下载yak pro和 php parse
  2. 这里指定目录为 /www/wwwroot/vpro 作为目录
git clone https://github.com/pk-fr/yakpro-po.git
git clone https://github.com/nikic/PHP-Parser.git --branch 4.x
# 进入yakpro-po目录
cd yakpro-po
# 检查yakpro-po.php是否具有执行权限
chmod a+x yakpro-po.php
# 为了更方便的使用 所以我们可以去创建一个软连接
cd /usr/local/bin
ln -s /www/wwwroot/vpro/yakpro-po/yakpro-po.php yakpro-po
# 创建完成以后我们进入我们的larveal目录 

以当前中间件作为demo进行混淆

需要注意的是 因为larveal 框架使用了反射等机制自动加载类,所以我们还需要调整一下 yakpro的配置 让他禁止去混淆一些关键信息

配置文件地址
打开 .cnf 文件 找到如下位置
在这里插入图片描述
修改如下变量为false 具体的配置信息可以查看(https://github.com/pk-fr/yakpro-po.git)的readme文件;
修改以后我们执行如下命令

# 这个命令大概就是指定使用 php来执行 yakpro-po 去混淆 cModuleMiddleware.php 输出到  cModuleMiddleware2.php
 /www/server/php/80/bin/php /usr/local/bin/yakpro-po cModuleMiddleware.php -o cModuleMiddleware2.php

在这里插入图片描述
无报错则说明正常 我们打开文件看一下
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a02ed119318e4f62bd3edc07d0fc8843.png可以看到已经正常执行混淆了,这里类名和命名空间等没有被混淆的原因是因为我们因为larveal的特性手动取消了混淆的配置
在这里插入图片描述
如果需要删除混淆以后的注释,找到如下代码注释即可
在这里插入图片描述

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值