作者:akens
目标:国内排名800左右的游戏综合站
前言:入侵过程没有什么技术含量,只是一些思路和心得,写的不对的地方还请大牛交流指点。虽然是在08年的时候做的检测,但是为了和谐起见,还是替换了真实url。
注入点?iid=1用工具跑出注入点有20个字段
?iid=1/**/and/**/1=2/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20/*
查看一些基本信息user()=cmsware888@10.0.0.16,database()=cmsware,version()=4.0.27-standard
信息爆出来后心里凉了半截,mysql版本小于5意味着不能用系统库来爆表和字段,试图爆文件,权限也不够。接下来用各种工具暴力猜表,结果还是无功于返。
点了根烟整理下思路,网站比较大,有很多的分玉米,想着是否能从分玉米下手先,于是google出了几个分站可疑的点,结果很令人失望,都不能注射。还是回到这个点上来,反复的看着得到的信息,突然间脑袋里闪出一个念头,数据库名是cmsware,网站会不会采用一套名为cmsware的整站程序?利马跑去google搜索cmsware关键字,果然有一套叫思维内容管理系统(CMSware),如果网站就是用的这套系统的话,那就比较好办了。赶紧去官方站下载一套源代码,在虚拟机上安装好了,查看数据库得到存储管理员密码的表名为cmsware_user。带入语句查询
?iid=1/**/and/**/1=2/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20/**

/from/**/cmsware_user/*
没有返回出想要的结果。。。有两种可能,要么网站用的根本不是这套系统,要么就是管理员把默认的表名给改了。看下user()=cmsware888@10.0.0.16这条信息,我尝试着把表名改成cmsware888_user带入查询:
?iid=1/**/and/**/1=2/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20/**

/from/**/cmsware888_user/*
意外的惊喜,竟然返回了出错页面。这下离成功渗透的距离不远了,将字段带入查询:
?iid=1/**/and/**/1=2/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,uId,12,13,uName,15,16,uPass,18,19,20/**

/from/**/cmsware888_user/*
得出一条管理员用户名和密码的信息密码是32位MD5加密,可惜没能破解出来,不过没关系,这么大个网站不可能只有一个管理员,于是陆续爆出了将近20个用户的密码,然后筛选出uGId=1的密码丢去网站破解。
成功破解出几个。密码有了,现在就差后台了。在网站上溜达了半天,工具扫描,google,baidu搜索,都没有找到后台。在和pk.akens.com的玉米后访问这套整站程序的文件夹,
发现都是不存在的目录。由此判断这套程序被分配了一个单独的玉米。有了这个思路,就可以回到数据库里来完成找后台的任务。因为很多的程序在初始配置的时候会把网站的URL填写进去。在虚拟机的数据库里找啊找,终于找到了cmsware_sys这样一个表里存放着网站的URL。
提交:?iid=1/**/and/**/1=2/**/union/**/select/**/1,2,3,4,5,6,7,8,9,10,11,12,13,varName,15,16,varValue,

18,19,20/**/from/**/cmsware888_sys/**/where/**/id=6/*
拿着之前爆出来的帐号和密码顺利的登陆后台
后台拿shell就比较简单了。在系统管理里有个系统函数管理选项。可以直接添加PHP代码。访问  便可以得到shell如果是root权限还可以执行数据库语句。登陆shell,里面有主站和分站的文件夹,稍微看了下,应该是做了文件同步。玩到这也就差不多了,删除shell走人。