解码GL\x4f\x42A\x4c\x53类加密实例

网上有很多PHP的加密文件,类似GL\x4f\x42A\x4c\x53格式的,下面我们给出解密的方法:

这里要解密的文件命名为:aaa.php 。

解密完成后会新建一个文件aaa1.php。 这里就是解密好的文件了。

%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++; } $i=0; $ra=array(); preg_match_all('/(?P\$\{"[a-zA-Z_0-9]+"\}\s*\[\"[a-zA-Z_0-9]+\"\])\s*=\s*"(?P[a-zA-Z_0-9]+)";/i',$r,$ra); foreach ($ra['item'] as $i=>$a){ //$a = ${"GLOBALS"}["mqhformwegp"] $b=$a.'="'.$ra['value'][$i].'";'; if (strpos($r,$b)!==false) { //print_r($b);exit; $r=str_replace($b,'',$r); $r=str_replace('{'.$a.'}',$ra['value'][$i],$r); } } preg_match_all('/(?P\$[a-zA-Z_0-9]+)\s*=\s*"(?P[a-zA-Z_0-9]+)";/i',$r,$ra); foreach ($ra['item'] as $i=>$a){ $b=$a.' = "'.$ra['value'][$i].'";'; $a1='${'.$a.'}'; if (strpos($r,$b)!==false&&strpos($r,$a1)!==false) { $r=str_replace($b,'',$r); $r=str_replace('{'.$a.'}',$ra['value'][$i],$r); } } preg_match_all('/(?P\$\{(?P\$[a-z]+)\})/i',$r,$ra); foreach ($ra['item'] as $i=>$a){ //$a = ${$mqhformwegp} //$b=$a.'="'.$ra['value'][$i].'";'; $b='/\\'.$ra['value'][$i].'=\"([a-zA-Z_0-9]+)\";/'; //print_r($b); //if(preg_match($b, $r, $c)){ if( preg_match($b,$r, $c) ){ $r=str_replace($c[0],'',$r); $r=str_replace($a,'$'.$c[1],$r); } } $r= str_replace("{","{\r\n\t",$r); $r= str_replace("}","}\r\n\t",$r); $r= str_replace(";",";\r\n\t",$r); $fn='aaa1.php'; $f=fopen($fn,"wb"); fwrite($f,$r); fclose($f); echo 'done...'; exit; }

你可能感兴趣的:(php,php)