从上图中我们可以看到,这是一个主站的页面,还有很多分站,如“游戏中心”、“交友”、“聊天室”等。主站是整合的dvbbs7.1 sql版的,常规漏洞是没有的,有一个blog是oblog的,血印叫我帮拿这个站的时候就说他在网上搜了一下,oblog存在多个漏洞,如“读本地任意文件漏洞”、“导出日志注入漏洞”,他希望从这里着手。
我便在网上搜了一下这两个漏洞的相关信息,既然已找到入口,先从这里去试试看。先看了一下user_help.asp?file=conn.ASP读网站的conn.asp,这里要注意的是代码里过滤了asp,所以把conn.asp的asp后缀改为大写的,最好用firefox,是读到一些信息,如下图:
这里可以获得一些有用信息:'Dim SqlDatabaseName,SqlPassword,SqlUsername,SqlLocalName SqlDatabaseName = "sqlbbs" SqlPassword = "860755" SqlUsername = "sa" SqlLocalName = "192.168.1.1",可以得知mssql的帐号和密码,可是很明显mssql只对内开放的,是一个内网ip。先将这个信息收集起来,找找它的数据库服务器看是否支持外网连接。
分析了一下主站,telnet ip 1433 还有3389等端口,和想像的一样,主站只开了80端口,那么这里我们可以猜测到数据库和服务器应该是分离的,并只在内网支持连接。其实这样的大站不用想也应该是这样设置的。
那么我们怎么找到哪一台是数据库服务器呢?朋友血印也在一起搞,他扫了一下这个网段,没有开1433的服务器,这就增加了难度,难道1433真的不能对外连接,那么这个读出来的mssql帐号和密码对我们没有什么用处了,就算社会工程学一下都很难。
还有一个oblog的注入,但这个注入有点恼火,因为是一个user_logzip_
file.asp文件里面的如下语句没有做过滤:
sdate=request("selecty")&"-"&request("selectm")&"-"&request("selectd")
edate=request("selectey")&"-"&request("selectem")&"-"&request("selected")
只得手动提交参数给这个文件,但这个文件里又有一个头文件作了如下判断:
ComeUrl=lcase(trim(request.ServerVariables("HTTP_REFERER")))
if ComeUrl="" then
response.write "
对不起,为了系统安全,不允许直接输入地址访问本系统的后台管理页面。"
看来ie是没办法的了,只有上firfox,利用插件截取表单和提交表单了。如图:
但导出来的txt文本都是一般用户的垃圾信息,管理员的字段改了,还过滤了一些字符。本来想暴管理员的密码出来,可现在字段又被改了,更恼火的是字符被过滤得差不多,搞了半天也没有弄到啥。
可现在一想,就算拿到管理员密码又有什么用?密码虽和dvbbs论坛的密码可能是用的一个库,但应该是md5加密的,如果不是用的一个库,那么进了 oblog拿webshell也不容易,更何况这个注入点还被过滤了字符。这么大的站不能困死在这一个地方,到其它地方看看,还有那么多的分站没有分析。
想完便到分站上去转了转,可一圈下来还是无奈,分站全是生成的静态页面,看样子分站的程序都是自己写的,查看了静态页面的源代码,是用的asp,试了几个链接也没有用。也许是习惯问题吧,试试google来查找注入了,既然是自己写的程序,难免会出一点差错,其实这里还有一个经验问题,在遇到大站都是静态页面的话通过google来查找注入点是很有效的。
根据我的习惯,打开啊d,这时候当然用软件来检测最快了,输入google.com 点高级,先择每页显示100条,再按google语法输入“site:xxxx.us asp”,site:后面不要跟www,因为还要搜索它二级域名的注入点,所以直接跟xxxx.us,运气不错,在第一页中就搜出来一个注入点,仅有的一个注入点,好难得,还是game.xxx.us域名上的。还好,是 db_owner权限,还可以列目录,真幸运,如图:
这就是我们常常在入侵过程中要寻找的突破点,这就是一个典型的突破点。
通过差异备份获得一句话马,再上传大马,还好权限不是设得很严,再加上上面装了个serv-u,直接用serv-u加个用户试试,居然提权成功,我在想这个管理员应该是中国的,里面还在卖游戏点卡,郁闷。
3389是开开的,为了安全起见,我从先关掉韩国的vpn,因为我的习惯一般在拿站的时候上vpn的,好处多多,速度也要快不少。然后登上台湾的3389肉机,再在肉机上连接数据库服务器的3389上去看看。如图:
上图是在台湾3389上面登到美国服务器上的,有点乱,我们打开mssql企业管理器,清楚的看到sqlbbs这个库,我们想到什么了,dvbbs数据库就在这个服务器上,很幸运,看了一下设置情况果然是内网连接的。对于dvbbs我们国内的朋友搞多了就知道,只要拿到管理员密码就很好搞了。但打开数据库 dv_admin表里面的密码是md5加密的,我索性把这个密码记下来,再改成自己的md5加密的密码,速战速决嘛。
现在我们向主站进攻,直接登录管理员帐号,做个mdb附加的asp马,再改成.jpg的,上传上去,接下来就是备分了,写了一个本地提交备分的。
upload:
copy to:
在这里还出现了一点小小的插曲,路径我填的upfiles/xxxx.gif可老是出现不是有效的数据库,最后研究了半天,原来管理员把上传的目录改成了upimages,真够郁闷,折腾了一下终于备份成功,如图:
接下来当然要做就做完了,同样,里面又是装的个serv-u,做事就做到底吧,上传个2003.reg开个3389,还好2003的服务器不用重启,给一个3389给血印同志就玩工了。
尾声:
血印同志看到我给他一个完整的3389服务器感激不尽,一直问我咋个进去的,其实很简单,我们在入侵的过程中寻找突破口很重要,要懂得放弃,在一个有破绽的地方久久没办法突破就想其它的办法。黑客技术是经验和思维的积累,其实很多情况下都没有什么高深复杂的技术,它需要我们的耐心和技巧。
来源:
https://www.jb51.net/hack/5363.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!