本期主角:TOM音街
问题所在:各种漏洞、后门链接
主要危害:网站被黑客入侵
调研时间:2009.9.6~2009.11.10
TOM音街,一个汇集大量歌曲的地方,相信登录的网民一定不少,但它的安全性却令人担忧。我们电脑报安全团队的成员,在该网站发现多次安全问题,涉及目录查看漏洞、物理路径泄露、黑客后门、注入漏洞。这些安全隐患虽然还没有对用户带来直接的影响,但对TOM音街却敲响了安全的警钟,是时候对网站进行一次彻底的安全检查了。
发现第一个漏洞
在刚进入TOM音街的时候,主要是为了听歌曲,只是非常无意的一个举动,在IE浏览器返回的时候想偷懒,因此直接将http://play8.tom.com/player/ splay.php?songid=706463网址后面的字符串去掉了,我认为http://play8.tom.com/player/会直接返回到首页,但是我错误了。
在取出掉网址后面的字符串之后,http://play8.tom.com/player/竟然直接呈现出了网页的目录(图1)。这是非常致命的错误,网站出现这种错误通常只有两个原因,管理麻痹大意,配置服务器的时候,由于技术生疏或者忽视,导致了配置错误,最终出现目录暴漏。
另外一种原因则是漏洞。例如FTP软件等造成的漏洞,由于管理员没有及时修补,或者管理员根本就不知道有这个漏洞,因此就造成了网站目录暴漏的问题。TOM音街的这台服务器就因为暴露了目录,让我很容易的就获取了网站的结构,还好这个网站使用的是PHP脚本语言,如果使用的是ASP Access,那么重要的后台数据肯定会暴漏在黑客的面前,让黑客可以轻易根据数据库路径将数据库整体下载窃取走。
目录暴漏漏洞很容产生衍生,随后经过详细的查找,我有找到了TOM音街的多个目录暴漏点,最简单寻找这种目录暴漏点的方法,就是将网址后面的数值去掉,或者干脆顺着已有的漏洞点击,就总会发现更多弱点。
再报漏洞——泄露的物理路径
为了挖掘更多的目录漏洞,我开始逐一点击各个目录,结果这次扫荡式的点击有了更多出任医疗的收获,在网址为“http://play8.tom.com/autorun/” 的目录下,有多个“.sh”后缀的文件,“.sh”格式文件是UNIX或Linux操作系统的可以执行的Shell脚本文件,打一个通俗的比喻,它非常类似Windows系统中可以执行DOS名冷的.COM文件。
这些.sh后缀的文件中,通常会包含有网站在服务器中的物理路径等信息。在马上下载回这些.sh文件后,使用记事本程序将文件打开,果然发现了TOM音街在这台服务器中的物理路径为:/www/webroot/a8/upload/tempfile/file。(图2)
黑客小百科:物理路径泄露属于低风险等级缺陷,它的危害一般被描述为“攻击者可以利用此漏洞得到信息,来对系统进一步地攻击”。提供Web、FTP、SMTP等公共服务的服务器都有可能出现物理路径泄露的问题。
比较常见的是Web服务器的路径泄露。导致Web服务器路径泄露的原因很多,可能是Web平台本身、脚本语言解释器、引擎插件、组件、辅助程序等一些原因造成的,也有可能是脚本编写错误所导致的。
很多时候,黑客会精心构造一个畸形、超长或不存在的文件请求,而这个请求是Web服务器没有预料且不能正确处理的,这时往往会返回出错信息——最直观的就是暴露物理路径。
得到物理路径能够做什么呢?对于许多黑客而言,物理路径有些时候能给黑客带来一些有价值的非公开信息信息,比如说:可以大致了解系统的文件目录结构;可以看出系统所使用的第三方软件;也说不定会得到一个合法的用户名(因为很多人把自己的用户名作为网站的目录名)。
最后的进攻——PHP注入
虽然得到了TOM音街的物理路径,但是毕竟都是危害级别不高的漏洞。不过管理员竟然出现了如此多的错误,想必平时一定不注重网络安全,于是我决定挑战一下,挖掘一下音街是否有危害更大的漏洞,例如注入漏洞。
查找注入漏洞的整个过程顺利的有点儿让我无语,甚至没有使用任何辅助工具的帮助,仅是随机的点开了几个网站,然后每个后面加入了一个“,”号,其中一个页面就立刻爆出了MYSQL的错误提示页面。
注入点http://comment.a8.tom.com/user.php?username=546557694。注入点顺利的找到了,此时可以祭出辅助工具帮助进行渗透了。我调出了PHP注入中小有名气的“Pangolin”,这是一款能够帮助黑客进行SQL注入的最好的工具之一。
黑客小知识:所谓的SQL注入测试就是通过利用目标网站的某个页面缺少对用户传递参数控制或者控制的不够好的情况下出现的漏洞,从而达到获取、修改、删除数据,甚至控制数据库服务器、Web服务器的目的的测试方法。Pangolin能够通过一系列非常简单的操作,达到最大化的攻击测试效果。它从检测注入开始到最后控制目标系统都给出了测试步骤。
在Pangolin的URL一项中输入查找出的注入点网址,然后点击Check就开始进行注入漏洞的检验了。很快Tom音街数据库的名称等信息就全部被猜了出来,然后使用MySQL的提权工具进行提权,添加管理员账号,上传Webshell木马。
#p#
正当我准备上传Webshell的时候,不知道是幸运还是不幸,我竟然惊讶的发现,TOM音街网站中已经有许多黑客的后门了,数量不低于20个。半个小时之前还兴奋的如同收到礼物一样,而现在则是一盆冷水从头浇到底。
既然别人已经放了后门了,那么我还上传什么WebShell,直接借用就好了。不过由于没有密码,在几个黑客留下的后门试着输入了几个白痴的密码,结果都被拒绝了。不过我很快想到了,许多黑客在上传Webshell的时候会留下大量用后门页面构造的虚假文件,根据日期排序,很快找到了一个文件,开打之后果然看到了密码,登陆。
TOM音街就这样失守了。
深度分析
TOM音街大概是最近一段时间我见过的知名大站中漏洞最多的一个网站了,从危害级别最低的目录查看漏洞,到网站被植入了20过个黑客后门,真不知道那些平时使用TOM音街的网友现在后怕不后怕。
导致目录查看漏洞的原因有多方面,有可能是软件漏洞,也有可能是管理员在配置服务器方面出现了差错或者经验不足,都有可能造成这个问题。程序出错网上是这个问题的主要原因,错误处理是各种语言编程中一个很重要的部分,虽然每种语言都提供了完善的出错处理函数,但你也得正确使用它。如Perl中的“die”函数,如果没有在错误信息后面加上“\n”的话,就很可能会导致物理路径泄露。然而,脚本程序员却一直忽略了这些问题,任何时候程序员都应该充分考虑,给出完整的出错处理方案。
而对于网站本身出现注入漏洞,则完全是代码检查不严造成的漏洞,如果网站在正式上线前进行仔细的代码安全监测,哪怕就是最常规的检测,都不可能出现如此低级的错误。
最令人叹为观止的还是Tom音街中的二十多个黑客后门。从时间来看,有不少后门在Tom音街的服务器中已经存在了一段时间了,网站方面竟然没有病毒过滤和探测系统,而管理员也没有及时查看服务器的新增文件变化,这些都是造成如此后果的原因。
TOM音街漏洞列表
目录查看漏洞
http://upload.a8.tom.com/ZendPlatform/
http://play8.tom.com/autorun/
http://play8.tom.com/upload/
http://play8.tom.com/player/
http://play8.tom.com/zhuanti/
http://play8.tom.com/images/
……
暴露物理路径文件
http://play8.tom.com/autorun/ClearUploadSession.sh
http://play8.tom.com/autorun/tempClearUploadSession.sh
http://play8.tom.com/upload/tempfile/upload.cgi
……
黑客后门(WEBSHELL)
http://play8.tom.com/upload/upload_yc2.php
http://play8.tom.com/upload/done_public.php
http://play8.tom.com/ZendPlatform/common/jpgraph/gogogo.php
http://play8.tom.com/ZendPlatform/common/text/en/shelll.php
http://play8.tom.com/ZendPlatform/common/htmlHelp/whgdata/2.php
http://play8.tom.com/ZendPlatform/common/htmlHelp/whgdata/Vote.php
http://play8.tom.com/uploadfile/photo/200602/23/1140700434_22939.php
http://play8.tom.com/uploadfile/photo/200602/23/1140704002_13145.php
http://play8.tom.com/uploadfile/photo/200602/23/1140705424_22939.php
http://play8.tom.com/uploadfile/album/199508/12/c1.php
http://play8.tom.com/uploadfile/photo/200607/04/1151979366_58787.php
http://play8.tom.com/uploadfile/photo/200604/18/1145322994_37261.php
http://play8.tom.com/uploadfile/photo/200604/18/1145323568_37265.php
http://play8.tom.com/uploadfile/photo/200604/17/1145277425_37161.php
http://play8.tom.com/player/images/shiting/2008.php
http://play8.tom.com/images/help/shabi/
……
注入漏洞
http://comment.a8.tom.com/user.php?username=546557694
【编辑推荐】