网络安全 频道

思维(CMSware)官方是这样被攻陷的

    【IT168专稿】一直想找个稳定的程序建立一个网站,来到了源码之家,看到一个叫“思维(CMSware)内容管理系”的程序,PHP+MYSQL搭建的,看起来还不错。就来到了官方看看程序怎么样。

    官方地址:http://www.lonmo.com/,新闻中心那里有一个链接“思维内容管理系统(CMSware 2.8.1203免费版发布及演示 “进去看看,是论坛里面关于程序的介绍。介绍内容如下:

    在线演示版地址:(请不要删改数据) 
    预览前台:http://demo.cmsware.com/28/ 
    预览后台:http://demo.cmsware.com/28/cmsware/ 
    在线演示后台用户名:demo 
    在线演示后台密码: demo 
    先声明:一切都是无意中的,绝对没有故意检测。

    按照说明进入了后台,看了下,如图1

图1

    看起来功能还真的很强大,就各个功能都看一下吧。作为演示版,后台许多功能肯定限制了,不限制的话,早被K了,本人也想看看作者都限制了些什么。下面就按检测的步骤来叙述本文。找了各种有关编辑的选项,模版管理这里也许会有问题,进去随便找了个目录,如图2

图2

    对应的文件后面有“编辑“这个选项,但是链接交互这个效果没有,还以为只是摆设呢,点一下是可以编辑的,点”编辑“弹出一个窗口。
 


图3

    选择结点,不太明白是什么意思,直接选择站点根目录了,点“确定“,又弹出一个小窗口,再“确定”,
又弹出如下窗口


 
图4

    看来可以编辑,也不一定,也许“写入“这种权限没有。尝试了几个目录,有的可以写。官方演示程序的地址是:http://demo.cmsware.com/28/,而进入的后地址如下:
 


图5

    发现无论点什么,后台地址都不变化,看来是在框架结构下,直接鼠标右键,属性,看到了后台真实地址,
http://demo.cmsware.com/28/cmsware/admin/admin_tpl.php?op=sId::d41578dab35eb07e6f19da9bddeb4eb1;o::list;PATH::/dynamic
    在另一个网页里面打开,看到最后面PATH后面的就是路径了,看来可以借助这个来浏览站点内的文件了,尝试一下,把/dynamic换成 ../  发现可以浏览上级目录,在换成../../../可以向上继续浏览,甚至看到了整个盘内的目录,如下


 
图6

    最上级能看到上面那里,这个根本不是站点了,而是,某个盘下的文件了。在某个文件夹下看到了整个服务器上放置的站点。

 
图7

    看来到这里,已经暴露出许多问题了,演示的后台应该限制掉这些,或者说某些权限设置的不到位。一些不应该被看到的被看到了,已经出现安全问题了。我们上面说模版编辑那里一些目录下是可写的。新建只能保存.html结尾的文件,PHP的根本不行,如果可以,那么这个过程就简单了。开始是这样构造的,尝试用一句话PHP木马来搞定,既然可以保存为.html原则上是可以利用的,把下面的代码保存为3.php?test=../q.html,服务器会解析成PHP执行的大概。
    <?php
    $test=$_GET['test'];
    @include 'test/'.$test; 
    ?>
    保存的时候发现建立了一个名为3.php?test=..的文件夹在其下面生成了q.html,看来不行,“/“会为任务是路径,把”/”换成/,这个是转码,保存成功,如图8


 
图8

    之后把一句话木马保存为q.html,找到路径在IE中访问,失败!为什么我也不明白,可以肯定的是在我保存的目录中是可以执行PHP,在windows服务器上是不允许文件名中带?的,这个应该是LINUX的明明看到了文件在服务器上了。已经成功的写进去了,不能被执行。文件判断是在服务器上的,如果是windows2003配置的更好办了可以象动易利用那样直接编辑保存模版为aa.php/1.html会自动建立一个aa.php文件夹,然后内容保存在1.html中,aa.php会被解析,可是似乎不是我们所说的。看来这个尝试到此为止了。

    用模版编辑尝试编辑几个PHP结尾的文件,似乎都没有权限,目录很多,尝试了一些一般情况认为可写的目录也失败了。
看来到了绝路了,但是当走入绝路的时候往往会出现转机,当我双击一个PHP文件的时候,弹出了一个窗口如下


 
图9

    乱码??似乎不是,象是PHP源文件,鼠标右键查看源代码,如下:


 
图10

    暴出了PHP源代码!!!,几乎所有目录下的都可以这样查看,好了,几乎拿下了,我们看看这个服务器上放的都是什么站,找个简单的站直接拿到数据库连接密码,登陆PHPMYADMIN,拿到MD5密码,爆破,几乎就崩溃掉。按照这个思路继续。图5那里有个www.youthad.net/这个站进去看了一下是WP的BLOG,简单了


 
图11

    有个wp-config.php按照上面的方法直接暴出了PHP代码,找到了MYSQL连接用户和密码,

图12

    是本地连接的,在它的上一层目录找到了PHPMYADMIN的登陆地址,站长已经改名了,如果没有这个遍历目录的缺陷,似乎很难再突破下去。登陆PHPMYADMIN,成功登陆
 

图13

    左边有个wp_user点击下,看到右面的user_login里面是用户名,user_pass里面是MD5保存的密码,一共有四个,放在xmd5.cn里跑出来了一个,恰好是admin的密码,很简单六个数字。之后用跑出的密码登陆作者的BLOG,


 
图14

    成功登陆,之后就是WP的后台拿WEBSHELL了,很简单有文件编辑功能。


 
图15

 
图16

    在目录里选一个不常用的文件来编辑,填写在编辑文件前面的文本框里,我在网上找了个国外的PHP木马,写入成功

图17

    一个国外的PHPSHELL。查看了下是UNIX服务器。提权不做了,未必能成功,继续做,目的也不明确了。最后在查看一次目录的时候发现有个config.php居然可以读取,不知道可不可写,估计可以,这个文件的属性应该是777的。我没有测试,要是可写,这个过程更简单了,那么也更可怕了。

 图18

    总结:一个小小磁盘遍历的程序错误可以攻陷一个网站甚至是服务器安全,笔者在发稿前已经E-MAIL通知思维官方,其实千里之堤毁于蚁穴,不仅仅是思维的管理员要注意,希望所有的管理员都注意。

0
相关文章