ANVIL 源码加密
纯 PHP 运行
自研 ANVIL-1 引擎,C 层随机派发密钥
产物
不需要安装任何扩展
,PHP 7.4+ 直接跑
每个文件独立随机密钥,用户不可见、不可指定
只加密,不提供解密
引擎状态
服务:
检测中…
单文件:
-
单包文件数:
-
产物结构
每个
.php
自包含,
没有额外的 loader 文件
产物里没有任何解密代码
,可读部分只有 45 个字符
载荷 = 压缩 + 一次性掩码(掩码由引擎随机派发),其余全是二进制
部署:整个目录上传即可,无需改代码、无需装扩展
混淆手段(打包前自动执行)
控制流扁平化
:每个函数体切成状态机,状态值随机取 hex/dec/oct/bin
AST 级改名
:类/接口/trait/枚举、命名空间函数、private 方法、private 属性、局部变量,跨文件统一映射
PUA 变种
:每次随机选私用区平面(BMP / Plane 15 / Plane 16)、名字长度 1~2 字符
字符串编码变种
:hex2bin / chr 拼接 / 转义串,每次随机
常量拆分变种
:异或 / 加减 / 移位,每次随机
死代码 + 不透明谓词
:不改变控制流
注释/空白清除
类/命名空间文件:顶层不动,
方法体照样扁平化
;heredoc 等不确定写法才跳过
注意事项
declare(strict_types=1)
会被剥离(eval 不支持该语句)
被保护文件里的
__DIR__
指向原目录,相对引用正常
压缩包只加密 .php;图片等资源请单独保留
密钥由引擎保管,丢失无法恢复,也无法解密还原
产物通常
比源码更小
(压缩 + 掩码),目标机需 zlib(PHP 默认自带)
上传源码
支持单个 .php 文件或 .zip 压缩包(自动批量加密包内所有 PHP)。
点击或拖拽文件到此处
.php / .zip
文件
-
大小
-
待加密 PHP
-
开始加密
加密完成
文件
-
产物
-
耗时
-
下载受保护包
解压后直接覆盖原目录即可,无需额外文件