欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

微盾PHP脚本加密专家解密算法

程序员文章站 2024-01-19 12:28:22
neeaosblog今天工作中某合作商拿过来代码让检查安全,一看代码加密了,比较汗,类似下面代码:

neeaosblog
今天工作中某合作商拿过来代码让检查安全,一看代码加密了,比较汗,类似下面代码:

<?php // This file is protected by copyright law & provided under license. Copyright(C) 2005-2009 www.vidun.com, All rights reserved. $OOO0O0O00=__FILE__;$OOO000000=urldecode(%74%68%36%73%62%65%68%71%6c%61%34%63%6f%5f%73%61%64%66%70%6e%72);$OO00O0000=28;$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$O0O0000O0=OOO0000O0;eval(($$O0O0000O0(JE9PME9PMDAwMD0kT09PMDAwMDAwezE3fS4kT09PMDAwMDAwezEyfS4kT09PMDAwMDAwez
E4fS4kT09PMDAwMDAwezV9LiRPT08wMDAwMDB7MTl9O2lmKCEwKSRPMDAwTzBPMDA9JE9PME9PMDAwMCgkT09PME8wTzAwLCdyYicpOyRPTzBPTzAw
ME89JE9PTzAwMDAwMHsxN30uJE9PTzAwMDAwMHsyMH0uJE9PTzAwMDAwMHs1fS4kT09PMDAwMDAwezl9LiRPT08wMDAwMDB7MTZ9OyRPTzBPTzAwTzA
9JE9PTzAwMDAwMHsxNH0uJE9PTzAwMDAwMHswfS4kT09PMDAwMDAwezIwfS4kT09PMDAwMDAwezB9LiRPT08wMDAwMDB7MjB9OyRPTzBPTzAwME8oJE8w
MDBPME8wMCwxMjU5KTskT08wME8wME8wPSgkT09PMDAwME8wKCRPTzBPTzAwTzAoJE9PME9PMDAwTygkTzAwME8wTzAwLDM4MCksJ0VudGVyeW91d2to
UkhZS05XT1VUQWFCYkNjRGRGZkdnSWlKakxsTW1QcFFxU3NWdlh4WnowMTIzNDU2Nzg5Ky89JywnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNk
ZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycpKSk7ZXZhbCgkT08wME8wME8wKTs=)));return;?> kr9NHenNHenNHe1zfukgFMaXdoyjcUImb19oUAxyb18mRtwmwJ4LT09NHr8XTzEXRJwmwJXPkr9NTzEXHenNHtILT08XT08XHr8XhtONTznNTzEXHr8Pkr8XHenNHr
8XHtXLT08XHr8XHeEXhUXmOB50cbk5d3a3D2iUUylRTlfNaaOnCAkJW2YrcrcMO2fkDApQToxYdanXAbyTF1c2BuiDGjExHjH0YTC3KeLqRz0mRtfnWLYrOAc
uUrlhU0xYTL9WAakTayaBa1icBMyJC2OlcMfPDBpqdo1Vd3nxFmY0fbc3Gul6HerZHzW1YjF4KUSvkZLphUL7cMYSd3YlhtONHeEXTznNHeEpK2a2CBXPkr9N
HenNHenNHtL7eWplC2ivwunPFolVcM8PhTSYtI== 很明显,是使用了某种PHP代码混淆工具混淆了下,Google一把,原来是使用的微盾PHP脚本加密专家加密的,网上搜了下,没找到免费的解密工具,于是乎,自己就研究了下,写了个解密算法,share下,给遇到同样问题的朋友一个方便。

       另外需要说明的是,我测试,本地解密出来的代码可以阅读的,由于代码混淆过,可能还原出来的有些地方和原代码有出入,有需要可自行修改之。


<?php 

/*********************************** 
*威盾PHP加密专家解密算法 By:Neeao 
*http://Neeao.com 
*2009-09-10 
***********************************/ 

$filename="install.php";//要解密的文件 
$lines = file($filename);//0,1,2行 

//第一次base64解密 
$content=""; 
if(preg_match("/O0O0000O0(.*)/",$lines[1],$y)) 

    $content=str_replace("O0O0000O0(","",$y[0]); 
    $content=str_replace(")","",$content); 
    $content=base64_decode($content); 

//第一次base64解密后的内容中查找密钥 
$decode_key=""; 
if(preg_match("/),.*,/",$content,$k)) 

    $decode_key=str_replace("),","",$k[0]); 
    $decode_key=str_replace(",","",$decode_key); 

//截取文件加密后的密文 
$Secret=substr($lines[2],380); 
//echo $Secret; 

//直接还原密文输出 
echo "<?php ".base64_decode(strtr($Secret,$decode_key,ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/))."?>"; 

?>