探索黑客技术攻防,实战研究与安全创新

导航菜单

友情检测网络安全论坛

 前段时间朋友在学校建立了一个安全论坛,希望能组织一个网络安全 Team,委托我去看看论坛安全性如何,毕竟自己的安全都保证不了,还给谁讲安全去?得到委托后就开始着手进行测评。已知信息如下:

所有用户名的密码都有特殊字符,默认密码全部修改。

服务器 IP:10.60.111.80

服务器硬件:虚拟机,XEON x4,4G内存,32G硬盘,Ubuntu12.04   ServerROOT用户存在,但非  root用户运行。

朋友给的建议集中在这几个方面,Web安全性:XSS、SQL   Injection、CSRF等常见漏洞;服务器软件的安全性;服务器自身的安全性。

委托项目这么多,压力自然也很大,不过我也肯定不可能做得那么全面,能做多少就做多少吧。首先整理下思路:

1.收集服务器信息,包括但不限于位置、软件、版本、已知漏洞;

2.收集 Web程序信息,查找已知漏洞;

3.得到 WebShell,根据权限决定是否进行提权等。

收集服务器信息

首先 Nmap跑下服务器信息,发现有  21端口开放,尝试登录  FTP查看信息,从返回信息看来,21端口禁止  root登录,如图  1所示。

正面入侵

其他暂时看不出来什么,去看看  Http服务吧。打开主站,看风格是自己修改过模版或者 CSS的,整体扁平风格。注册用户后,看下底部的版权信息,发现是  DiscuzX3.1的论坛。

这么新的论坛,手头又没有  0Day,怎么入侵?尝试旁注?先看看插件有问题没。逛一逛,发现整站很简洁,基本没用的插件功能都删了。点击用户头像就会返回到主页,看样子连个人中心都关闭了!

之后我就很郁闷的给朋友打了个电话,说这都是最新的  DiscuzX3.1论坛了,我这也没0Day,你跟着打补丁不就好了。朋友只是一声偷笑,说你再看看,不一定没有漏洞,就把电话挂了。这就让我纳闷了,笑什么呢?难道不是 DiscuzX3.1?打开枫树 CMS识别,经过扫描,发现竟然是 PHPWind8.7!再右键源码,查看 CSS和  JS的文件名,的确如此,如图   2所示。好一个狡猾的站长,不过确实是个保证安全性的好方法!



QQ截图20160909150959.png

不过就算是 PHPWind8.7,最新版也是没有  0Day的,既然都说了密码都有特殊符号,也就没有必要尝试爆破了。正面没法进攻了,又是独立服务器,只能尝试其他途径了。正当我想有什么其他办法的时候,忽然发现网站主页变了,变成了其他网站的安装界面,当时我很纳闷,难道被人黑了?赶紧给朋友打电话,朋友说没有被黑,他在考虑网站的整体功能,准备再换一套源码,就在半夜人少时测试用的,我说你测试建立一个目录测试不就好了,干嘛在根目录,朋友说以前是建子目录,反正现在人少懒得弄了,测试效果好的话就不用再折腾了。之后我就忽然感觉有了希望!既然是测试用,那么里面肯定会存在很多默认设置或者默认密码!等他安装完之后,最快的速度尝试默认密码,可惜他是用正式上线的态度去测试网站,所以密码还是很安全的,不是默认密码。等等!他以前是在二级目录里测试的,那删没删以前的网站源码呢?

找到突破口

把网址扔到御剑里开始狂扫,显示扫描出来 2个有用的子目录:10.60.111.80/1和/2。打开之后发现是一套测试用的 CMS,如图 3所示。看下面的信息,显示是  xiuno bbs2.0.0,网上搜索对应的漏洞,发现有一个后台执行漏洞。

找到后台 10.60.111.80/1/admin/?index-login.htm,尝试  admin等常用弱口令无解。从网上下载对应的 BBS源码,本地搭建看了下结构,发现后台登录并没有进行登录校验次数限制,且/1的管理员账户都是默认的  admin,估计密码也应该不会太复杂。扔到我的服务器上Burp爆破,设置好失败匹配字符“密码不对!”,终于找到了密码  123698745,得到了一个突破口!就在登陆的时候,却发现如图 4所示的提示。

QQ截图20160909151118.png

看来是做了管理员登录 IP限制,猜测允许的  IP段是  10.60.111.1-254(应该是只允许这个网段,也就是只允许实验室里面进行登录!)。

首先尝试下修改 X-Forwarded-For看能不能绕过!用火狐里的  Modify  Header插件尝试更改为  10.60.111.20,无果。从本地搭建的论坛看到源码并不是通过   X-F-F验证的,而是“$con\=$_SERVER["REMOTE_ADDR"];”。转移阵地再看 10.60.111.80/2这个目录,打开后显示   404,扫了目录下,发现里面应该空的。看来必须要通过 C段内的其他服务器登录了。扫描整个网段,发现存在   10.60.111.44这个    IP存活。Nmap扫描查看,开放了  80、3389,有  MySQL,用 Xampp搭建,还有  Ftp,如图  5所示。开放了这么多服务,估计安全性不容乐观。但是用 Chrome加载网站就是加载不完,浏览器不兼容?换成火狐也是无法加载完,换成   IE显示了头部的一部分,然后提示下载ActiveX插件,下载后显示如图  6所示的提示。

QQ截图20160909151205.png

QQ截图20160909151159.png

打开 IE的设置,启用“下载未签名的   ActiveX控件”,确定,再启用“允许运行....”,应用,即可安装运行 ActiveX插件。

不知这个 ActiveX到底干了什么,直接从  10.60.111.44跳到了  10.60.111.44/bbs这个子目录,打开后如图 7所示。

QQ截图20160909151243.png

看风格感觉很像 Discuz或者是   Phpwind早期版本。默认信息已经被隐藏,右键源码搜索 dis和  wind,结果搜索到了 Discuz 6.1.0,直接利用现成的漏洞 getshell,菜刀执行命令一看,竟然是 administrator权限!如图  8所示。

QQ截图20160909151345.png

搞定主站

直接 net user加账户,3389连接之,再3389远程访问80,终于成功进入目标后台!之后通过 XiunoBBSCMS的一个后台getShell。漏洞利用方法可以参考/bugs/wooyun-2010-019717/,成功得到 webshell。

跨到上一级目录查看整个网站的目录,如图9所示。不知大家注意到没有,站长把phpMyadmin改名为   jspuradmin!好吧,对于这种强悍又狡猾的安全意识,我只能表示佩服了!

再查看一下权限,如图 10所示,发现还要提权!看了下系统版本和相应的软件版本,好像都是最新的,没有相应的漏洞可以提权。

QQ截图20160909151410.png

最后一战

我们可以看到文件的属性基本都是  0777,也就是说可以修改文件,所以根据  phpwind的帮助文档,我们通过菜刀修改 PHP源文件,成功得到主站的站长密码  DEMO//m,确实安全性还算不错,虽然短,但是复杂度高。

那么 SSH密码呢?嗅探?好像只有  ssh1可以嗅探到密码。不管了,就这样吧。不过,既然我是物理上认识站长的,何不就让他“告诉”我呢?

QQ截图20160909151802.png

之后SSH登录上去,如图11所示。

QQ截图20160909151555.png

自此,终于完全拿下了权限。又一次,一个挺安全的网站,倒在了 test这个特殊的身份上。以后还是牢记在心:就算是 test,也要加强密码,test后即刻删除!

本文为网络安全技术研究记录,文中技术研究环境为本地搭建或经过目标主体授权测试研究,内容已去除关键敏感信息和代码,以防止被恶意利用。文章内提及的漏洞均已修复,在挖掘、提交相关漏洞的过程中,应严格遵守相关法律法规。

相关推荐