4f-php,php 解码GL\x4f\x42A\x4c\x53 加密文件代码实例

解码GL\x4f\x42A\x4c\x53,比如在wordpress的某个autopost采集发布插件中就有这样的代码

形如GL\x4f\x42A\x4c\x53的文件解码,一般不是直接16进制转字符就可以,对其中的引号和斜杠要做一些判断和处理,例子如下:

< ?php

$t=\'0123456789abcdefABCDEF\';

$fn=\'hexcodedfile.php\';

$r=$p=$qt=$s=\'\';

$slash=false;

$i=$j=0;

if ($f=fopen($fn,"rb")){

$s=fread($f,filesize($fn));

fclose($f);

for ($i=0;$i

$slash=false;

$p=sprintf(" %06d,%06d",$i,$j);

if ($s[$i]==\'\'&&$s[$i + 1]==\'x\'

&&strpos($t,$s[$i+2])!==false&&strpos($t,$s[$i+3])!==false){

$qt=strtolower(substr($s,$i,4));

$slash=(($qt==\'\\x22\'||$qt==\'\\x5c\')&&$s[$i-1]!=\'\') //引号\\x22 斜杠\\x5c,前面不是斜杠,需补充斜杠

||(($qt==\'\\x22\'||$qt==\'\\x5c\')&&substr($s,$i-2,2)==\'\');//前面是2+个斜杠,需要补充斜杠

if ($slash) {

$p=sprintf("%s",$p);

$j++;

}

echo \'H:\'.$qt.\'=> \'.chr(hexdec($s[$i+2].$s[$i+3])).$p.\'
\';

$qt=($slash)?\'\':\'\';

$r.=$qt.chr(hexdec($s[$i+2].$s[$i+3]));

$i=$i+3;

}else{

echo \'C:=====> \'.$s[$i].$p.\'
\';

$r.=$s[$i];

}

$j++;

}

$fn.=\'-1\';

$f=fopen($fn,"wb");

fwrite($f,$r);

fclose($f);

echo \'done...\';

}

?>

直接解码后,使用时报错,提示大括号匹配有问题,实际原因是,源码里的注释行,解码错误,删掉源码中的注释行,再解码即可。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明php 解码GL\x4f\x42A\x4c\x53 加密文件代码实例!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值