(四)php-screw加密文件

项目地址

https://github.com/ianxtianxt/php-screw

安装命令

我是在kali-rolling上测试的,提示没有phpize这个命令。
apt-get install php-dev

然后解压
tar –zxvf php_screw-1.5.tar.gz

1.pngphp-screw加密文件/media/rId21.png)

编译PHP扩展的工具,主要是根据系统信息生成对应的configure文件

Phpize
./configure

2.pngphp-screw加密文件/media/rId22.png)3.pngphp-screw加密文件/media/rId23.png)

编辑my_screw.h修改pm9screw_mycryptkey密钥的值

如下图,是默认值

4.pngphp-screw加密文件/media/rId24.png)

此外我们可以编辑php_screw.h修改PM9SCREW 和 PM9SCREW_LEN的值,注意PM9SCREW_LEN的值要小于等于PM9SCREW的长度。如下图是其默认值。

5.pngphp-screw加密文件/media/rId25.png)

进行编译

如下图编译时出错了,在php_screw的目录下以下命令执行即可解决,最后编译成功。

sed -i "s/CG(extended_info) = 1;/CG(compiler_options) |= ZEND_COMPILE_EXTENDED_INFO;/g" php_screw.c

6.pngphp-screw加密文件/media/rId26.png)

将编译好的php_screw.so拷贝到php扩展库目录。

通过phpinfo()页面查找extension-dir关键字

7.pngphp-screw加密文件/media/rId27.png)

将编译好的php_screw.so拷贝到php扩展目录。

cp modules/php_screw.so /usr/lib/php/20151012/php_screw.so

编辑php.ini添加以下一行代码

extension=php_screw.so

重启http服务器

Service apache2 restart

编译加密工具

cd tools
make

编译完成后生成screw可执行文件。> 8.pngphp-screw加密文件/media/rId28.png){width="5.833333333333333in" height="2.4657994313210847in"}

尝试加密一个php文件

我们写一个phpinfo.php文件内容是

然后执行./screw phpinfo.php加密文件,见下图

9.pngphp-screw加密文件/media/rId29.png)

将加密好的文件拷贝到web目录

cp phpinfo.php /var/www/html/phpinfo.php

10.pngphp-screw加密文件/media/rId30.png)

批量加密php文件

find /data/php/source -name “*.php” -print|xargs -n1 screw //加密所有的.php文件

参考链接

https://www.cnblogs.com/StudyCat/p/11268399.html

Qingy文库 all right reserved,powered by GitbookFile Modify: 2021-07-15 19:59:50

results matching ""

    No results matching ""