php解密eval
❶ php文件解密
PHP所有的加密都是纸老虎,把eval换为exit,然后在控制台(或者DOS下)运行一下就能看见那个eval语句解密后的代码,用来替换eval语句既可。例如你的程序中,第一个eval替换为exit后,执行输出的代码如下:
$OO0OO0000=$OOO000000{17}.$OOO000000{12}.$OOO000000{18}.$OOO000000{5}.$OOO000000{19};if(!0)$O000O0O00=$OO0OO0000($OOO0O0O00,'rb');$OO0OO000O=$OOO000000{17}.$OOO000000{20}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OO0OO00O0=$OOO000000{14}.$OOO000000{0}.$OOO000000{20}.$OOO000000{0}.$OOO000000{20};$OO0OO000O($O000O0O00,1253);$OO00O00O0=($OOO0000O0($OO0OO00O0($OO0OO000O($O000O0O00,380),'3MUQw4rlCWsbe+DthpLui5VnAfOSB9N6/=','+/')));eval($OO00O00O0);
用这一段替换源文件中的eval那一个语句,替换后的内容如下:
<?php // This file is protected by right law & provided under license. Copyright(C) 2009 www.i7a.cn, 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=9504;$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';$OO0OO0000=$OOO000000{17}.$OOO000000{12}.$OOO000000{18}.$OOO000000{5}.$OOO000000{19};if(!0)$O000O0O00=$OO0OO0000($OOO0O0O00,'rb');$OO0OO000O=$OOO000000{17}.$OOO000000{20}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OO0OO00O0=$OOO000000{14}.$OOO000000{0}.$OOO000000{20}.$OOO000000{0}.$OOO000000{20};$OO0OO000O($O000O0O00,1253);$OO00O00O0=($OOO0000O0($OO0OO00O0($OO0OO000O($O000O0O00,380),'3MUQw4rlCWsbe+DthpLui5VnAfOSB9N6/=','+/')));exit($OO00O00O0);return;?>
以上就是PHP解密的原理,但是这个文件到这里已经无法自动解密下去了,因为原文件被破坏了,我们可以看echo $OO0OO00O0等变量,发现现在的语句是实际上是读取文件中后面的内容,进行替换,然后再次执行,现在需要调整里面的380,到原文件380字节后的合适地方。
❷ 解密php eval(base64_decode方法
对于第一段:
eval(base64_decode('90ZXJfdCgpOw=='));
你可以编写如下的测试程序:
<?php
exit(base64_decode('90ZXJfdCgpOw=='));
?>
在命令行执行上面的测试程序,输出结果如下:
function theme_footer_t() { if (!(function_exists("check_theme_footer") && function_exists("check_theme_header"))) { theme_usage_message(); die; } } theme_footer_t();
上面输出的结果,可橘伍扰以替换测试你的第一段代码,它们完全等效,或者说就是解密后的代码,你掌握这个橘指方法,PHP根本就是不可能真正加密的,都是欺负初学圆旦者而已。