论坛漏洞分析之上传漏洞和暴库漏洞

作者:hack1990 时间:11-01-02 阅读数:586人阅读


软件安全


论坛是Internet上的一种电子信息服务系统,它提供一块公共电子白板,每个注册用户都可以在上面“书写”,可发布信息或提出看法。


目前论坛软件很少有人自己编写,而大都是采用在网上下载的源程序。常见的论坛源程序有动网论坛(DV BBS)、雷傲论坛及目前比较流行的BBS XP论坛。


本节将介绍论坛中常见的两个漏洞,着重介绍利用思路,希望以此唤起各论坛管理员的安全防范意识。


4.3.1 上传漏洞


论坛上传漏洞是论坛中一种很常见的漏洞。论坛源码往往由于设计失误而引发漏洞,其中允许远程用户将任意文件上传到论坛主机上的漏洞被称为论坛的上传漏洞。通过论坛上传漏洞,入侵者甚至可以完全控制远程开启论坛服务的主机。绝大部分论坛为了界面的美观与人性化都支持文件上传功能,而上传的文件有类型的限制,设计失误是指对文件类型过滤不严,比如本应只允许JPEG格式的文件上传,结果用户却可以上传ASP文件。下面以利用动网论坛(DV BBS)存在的上传漏洞的实例来说明上传漏洞的具体内容及利用方法。


1.实例


利用动网论坛上传漏洞进行入侵。


动网论坛上传漏洞的描述:动网论坛上传漏洞存在于DV BBS7.0 SP2及其更低的所有版本中,其中DV BBS7.0 SP2以前的版本可以利用工具直接上传ASP文件。


漏洞存在于基本资料修改中头像上传位置,如图4-73所示,单击“上传”按钮将调用upfile.asp文件,而upfile.asp中存在文件类型过滤不严的问题。
 
 
图4-73
漏洞利用思路:检测到漏洞后,在存在漏洞论坛中注册一个用户账号,利用这个账号获取Cookie。在本地制作网页木马文件,使用专用工具结合已获取的Cookie值将网页木马上传到远程主机中。


步骤1:搜索漏洞


漏洞的搜索可以使用百度(http://www.baidu.com)、雅虎(http://cn.search.yahoo.com/)等搜索引擎。例如,在百度中搜索“"Powered By:Dvbbs Version 7.0.0 SP1"”,如图4-74所示。
 
 
图4-74
本实例中将对一个已发现存在上传漏洞的动网论坛主机进行攻击测试,地址:http://192.168. 232.132,版本为6.1.0,如图4-75所示。
 
 
图4-75
步骤2:注册用户


本例中想利用上传漏洞需要进入用户基本资料设置页面,因此首先需要注册一个用户,这里的用户名注册为squirrel,密码为111111,登录时如图4-76所示。
 
 
图4-76
登录后,选择用户控制面板中的基本资料修改项,如图4-77所示。
 
 
图4-77
进入后,显示如图4-78所示。
 
 
图4-78
步骤3:获取Cookie


什么是Cookie


Cookie是由Internet站点创建的、将信息存储在计算机上的文件,例如访问站点时的首选项。Cookie可以存储个人可识别信息,例如姓名、电子邮件地址、家庭或工作地址,或者电话号码。一旦将Cookie保存在计算机上,则只有创建Cookie的网站才能读取。


Cookie包括永久Cookie和临时Cookie。永久Cookie以文件形式存储在计算机上,关闭Internet Explorer时仍然保留在计算机上,再次访问该站点时,创建该Cookie的网站可以读取。临时Cookie或会话Cookie仅为当前浏览的对话存储,关闭Internet Explorer时即从计算机上删除。


工具介绍


使用工具:Winsock Expert。


工具说明:目前常用的版本是Winsock Expert v0.6 beta1。Winsock Expert是用于跟踪程序执行的专用软件,可以使用这个软件来跟踪IE的执行情况,获取相关的Cookie信息。


Cookie的获取


打开Winsock Expert,如图4-79所示。

 
 
图4-79
用已注册的用户名登录到论坛,进入基本资料修改页面,如图4-80所示。
 
图4-80
为了获取Cookie,需要跟踪IE的执行情况,抓取数据包。回到Winsock Expert,单击图标,在Select Process To Monitor中选择刚刚打开的页面,这里是“动网先锋论坛——基本资料修改”,如图4-81所示。
 
 
图4-81
选定好单击“Open”按钮,这时的Winsock Expert运行界面如图4-82所示。
 
图4-82
将Winsock Expert暂时放在一边,不要对其进行其他操作。在论坛的个人基本资料修改页面中单击“浏览”按钮,随便选取一个文件,如图4-83所示。
 
图4-83
单击“上传”按钮后显示如图4-84所示,直接上传ASP文件会被过滤掉,后边的步骤中将介绍如何利用工具上传ASP网页木马,现在只是为了得到Cookie为后边的步骤做准备。
 
 
图4-84
到这里,已经实现了抓取数据包。在Winsock Expert窗口中Packets Text栏下找到“POST 路径”项所在的行,并单击此行,在窗口下部的详细信息中即包含了需要的Cookie信息和上传处理文件的路径信息和文件名信息,如图4-85所示。本例中获得的Cookie信息为ASPSESSIONIDQGQQGUDK=NMPJMAFDNGMAJHOCNLOELOHL,上传处理文件的路径为论坛根目录,文件名为upfile.asp。
 
图4-85
步骤4:生成网页木马


工具介绍


使用工具:海阳顶端网ASP木马2006版。


工具说明:海阳顶端网ASP木马2006版中包含有6个文件,文件的使用说明如下。

2006.asp,海阳顶端网ASP木马2006版文件。
pack.vbs,打包文件“HYTop.mdb”的解开器。
2006X.exe,海阳顶端网ASP木马2006 C/S模式转换器。
2006X2.exe,海阳顶端网ASP木马2006专用短服务器端C/S模式转换器。
2006Z.exe,海阳顶端网ASP木马2006_Lite版本组合器,用来自定义生成相应功能的Lite版木马。
hididi.ini,2006Z.exe的配置文件。


这里使用2006Z.exe生成的网页木马文件。使用2006Z.exe的好处在于生成网页木马的功能可选,且上传后易于操作。

2006Z.exe使用说明:打开程序后,可以在“页面选择”框架里选择所需要生成的Lite版海阳顶端网ASP木马功能模块,“页面生成”框架里的源文件指的是Full版的海阳顶端网ASP木马2006(本文件夹中的2006a.asp),选择好相应的源文件及生成文件后,单击“生成”按钮即可生成相应功能组合的海阳顶端网ASP木马2006_Lite版。hididi.ini里保存的是各个功能模块所需要的相关函数集合,随意修改其内容将导致生成的文件将不可使用。


网页木马的生成


打开2006Z.exe,如图4-86所示。

 
 
图4-87
 
单击“生成”按钮,生成网页木马文件sys.asp。


步骤5:将网页木马上传到论坛主机


工具介绍


使用工具:DVBBS上传利用程序(dvup_delphi.exe)。


工具说明:DVBBS上传利用程序(dvup_delphi.exe)是我国著名的网络安全技术专家桂林老兵编写的动网论坛上传漏洞利用工具,其运行界面如图4-88所示。
 
 
图4-88
上传网页木马


在DVBBS上传利用程序(dvup_delphi.exe)中填入用于上传的相关信息。


“提交地址”用于填入论坛上传处理文件的地址信息,本例中已通过Winsock Expert获得,为http://192.168.232.132/upfile.asp


“上传路径”用于指定ASP木马文件上传后的存放位置,在这里还可以进行木马文件的名称更改,本例中上传路径填为sys.asp,即保存在论坛根目录下且命名为sys.asp。


“本地文件”用于选择需要上传的文件(一般是网页木马文件)的位置,可以通过单击“浏览”按钮进行选择,本例中的本地路径填为G:\Documents and Settings\Squirrel\桌面\dv7\hyt2006 \sys.asp。


“Cookie”中填入通过Winsock Expert获得的Cookie,本例中为ASPSESSIONIDQGQQGUDK =NMPJMAFDNGMAJHOCNLOELOHL。
各项信息填写完整后,显示如图4-89所示。
 
 
图4-89
在上传文件前往往将“显示返回信息”打开,用于显示文件上传是否成功,如图4-90所示。
 
图4-90
单击“上传文件”按钮,显示如图4-91所示。
 
图4-91
网页木马文件上传成功,所存放位置为http://192.168.232.132/sys.asp


步骤6:连接检测


打开IE,输入“http://192.168.232.132/sys.asp”,显示如图4-92。
 
 
图4-92
默认的管理密码为lcxMarcos。这个密码可以通过修改2006.asp文件来更改,用记事本打开2006.asp,显示如图4-93所示,在第29行有语句:
 
 
图4-93
Const userPassword = "lcxMarcos" ''管理密码


将lcxMarcos替换为自己设定的密码即可。


使用管理密码登录后界面如图4-94所示,页面的显示与先前选择的功能模块有关。
 
 
图4-94
进入FSO文件浏览操作器,如图4-95所示。
 
 
图4-95
2.安全解决方案


论坛系统的上传漏洞是一个普遍存在的漏洞。由于不同论坛系统在实现方式上存在差异,因此对于上传漏洞的修补,需要到具体论坛系统的官方网站上下载相应的补丁包或升级程序。


对于本节中所涉及的动网论坛系统的上传漏洞,可以到http://www.dvbbs.net/下载该漏洞的补丁程序。

4.3.2 暴库漏洞


暴库漏洞属于脚本漏洞的一种。暴库是指通过显示错误信息的方式将把数据库的物理路径给暴露出来。暴库前需要将Internet选项->高级->显示友好HTTP错误信息去掉,如图4-96所示,同时要求数据库为Access数据库。
 
 
图4-96
1.实例:利用BBS XP论坛暴库漏洞进行入侵


BBS XP论坛暴库漏洞的描述:BBS XP论坛5.15版存在暴库漏洞。


BBS XP论坛5.15版存在暴库漏洞原理:blog.asp是一个日志文件,用于显示论坛社区的公告信息。blog.asp的第一行为<!-- #include file="setup.asp" -->,所调用的setup.asp中含有数据库操作的相关内容。由于缺少有效的检测机制,可以通过blog.asp直接构造数据库执行命令访问数据库。一条从数据库的表clubconfig中读取adminpassword值的语句如下:


blog.asp?id=1%20union%20select%20top%201%201,[adminpassword],1,1,1,1,1%20from%20[clu-bconfig]


表clubconfig是论坛数据库中存放管理员信息的表,值adminpassword是管理员的密码,如图4-97所示。
 
 
图4-97
关于数据库执行命令语句的详细编写请参考相关的ASP书籍和数据库书籍。


漏洞利用思路:首先检测远程主机是否存在漏洞。检测到漏洞后注册一个账号,获取Cookie信息。暴库拿到管理员账号、前台密码和后台密码后结合已获得的Cookie进行Cookie欺骗,从而获得管理员权限。


以下将详细介绍漏洞利用的方法。


步骤1:漏洞检测


漏洞的检测可以使用百度(http://www.baidu.com)、雅虎(http://cn.search.yahoo.com/)等搜索引擎。以百度为例,在百度中搜索“"Powered by BBSxp 5.15/Licence "”,如图4-98所示。
 
 
图4-98
注意到搜索项为“"Powered by BBSxp 5.15/Licence "”。“Powered by BBSxp 5.15/Licence”代表BBS XP论坛5.15版+Access数据库;Powered by BBSxp 5.15 SQL/Licence代表BBS XP论坛5.15版+SQL Server数据库。


前面已经说明暴库只能针对ACCESS数据库,因此在搜索的时候要锁定关键信息。


本实例中将对一台BBS XP论坛主机进行攻击测试,地址为:http://192.168.232.131,版本为5.15,如图4-99所示。
 
 
图4-99
步骤2:注册账号

与利用上传漏洞类似,利用BBS XP论坛暴库漏洞进行入侵同样需要注册一个账号用于获取Cookie。进入注册页面注册一个账号,如图4-100所示。
 
 
图4-100
注册了一个用户名为syl,密码为111111的用户。使用这个账号登录后显示如图4-101所示。
 
图4-101
步骤3:利用暴库漏洞暴出管理员后台密码


利用暴库漏洞暴出管理员密码有两种方式:手动获取方式和自动获取方式(使用漏洞工具)。


手动获取方式


在IE中直接输入http://192.168.232.131/blog.asp,会有如图4-102所示的显示。
 

 


图4-102
在IE的地址栏中输入“http://192.168.232.131/blog.asp?id=1%20union%20select%20top% 201% 201,[adminpassword],1,1,1,1,1%20from%20[clubconfig]”,其中的“192.168.232.131”为论坛主机的地址,如图4-103所示。
 
图4-103

页面下方显示的即为管理员后台密码,这个密码是经过MD5(一种加密方法)加密过的。本例中的密码为742EFA3A2FAC92228806E142523219D9。


手动获取有一定的技术难度,这里做了简要的介绍,后边将主要使用自动获取方式获取相关信息。


自动获取方式


使用暴库工具获取密码。


使用工具:BBSXP暴库工具。


工具说明:BBS XP论坛的暴库漏洞利用工具,由火狐论坛的小强编写。这个工具实际相当于一个执行语句的集合,通过所提供的参数对BBS XP论坛进行暴库。程序的初始化界面如图4-104所示。

 
 
图4-104
表名:论坛数据库中的某个表,常用的表是clubconfig(存放有后台管理密码)和user(存放用户信息)。


字段名:指定表中的某个字段,常用的字段是adminpassword(管理员密码,存放在clubconfig表中)和username(用户名,存放在user表中)。


附加条件:用于缩小搜索的范围,比如一般只需要暴出管理员账号,而不需要暴出所有用户的账号。常用的附加条件有membercode=5(指定暴出管理员账号,存放在clubconfig表中)和ID =1(一般情况下管理员是第一个注册到论坛的用户,其对应的ID号为1,存放在user表中)。


网址:论坛默认页所在网址,而不是数据库所在位置,如在本例中为http://192.168.232.131


对论坛进行暴库,添入各相关参数,如图4-105所示。这里注意暴密码的时候附加条件为空。
 
 
图4-105
单击“暴出数据”按钮,成功后显示如图4-106。
 
图4-106
结果为:742EFA3A2FAC92228806E142523219D9,与手动获取的密码是一致的。


步骤4:利用暴库漏洞暴出管理员账号


暴出管理员账号也有两种方式,即手动获取方式和自动获取方式。这里只介绍自动获取方式。


打开BBSXP暴库工具,填入参数,如图4-107所示。
 
 
图4-107
单击“暴出数据”按钮,成功后会显示如图4-108所示。
 
图4-108
管理员账号为admin。


步骤5:利用暴库漏洞暴出管理员前台密码


打开BBSXP暴库工具,填入参数,如图4-109所示。
 
 
图4-109
单击“暴出数据”按钮,成功后会显示如图4-110所示。
 
 
图4-110
管理员前台密码为742EFA3A2FAC92228806E142523219D9,前后台密码是一样的,这种前后台使用相同的密码是很不安全的。


步骤6:获取Cookie


Cookie介绍


(略)。


工具介绍


使用工具:MyBrowser.exe。


工具说明:MyBrowser.exe是由桂林老兵编写的集网页浏览、Cookie获取和SQL注入于一体的应用软件。


Cookies的获取


用MyBrowser.exe打开http://192.168.232.131,如图4-111所示。

 
 
图4-111
使用已注册的用户名登录,如图4-112所示。
 
 
图4-112
登录后的显示如图4-113所示。
 
图4-113
注意到MyBrowser.exe的右上方显示的即为Cookie信息,本例中的完整Cookie为skins=1; ASPSESSIONIDSAATBQDB=KLJBKOE
APLAJLEJELIGNPLCD;eremite=0;userpass=96E79218965EB72C927747.net49DD5A330112;

username=syl;onlinetime=2005%2D6%2D10+%C
9%CF%CE%E7+07%3A00%3A31; addmin=10。

需要说明的是在上节的上传漏洞利用中并不需要完整的Cookie信息,只需要其中的ASP session内容。


步骤7:Cookie欺骗,以管理员身份登录论坛


在图4-113所示的界面中,单击Cookies显示框左边的“设置自定义Cookies”按钮 ,如图4-114所示。
 

 


图4-114
将username项改为admin,userpass项改为已获得的管理员前台密码,Cookies变为skins=1; ASPSESSIONIDSAATBQDB=KLJB
KOEAPLAJLEJELIGNPLCD;eremite=0;userpass=742EFA3A2FAC92228806E142523219D9;

username=admin;onlinetime=2005%2D6%2D
10+%C9%CF%CE%E7+07%3A00%3A31; addmin=10,刷新一下,如图4-115所示。
 
 
图4-115

页面变为admin登录后的界面。在管理中找到登录管理,如图4-116所示。
 
 
图4-116
单击“登录管理”后显示如图4-117所示。
 
图4-117
后台登录使用经MD5加密过的值是不行的,需要破解。


步骤8:破解管理员后台管理密码


工具介绍


使用工具:MD5Crack.exe。


工具说明:MD5Crack专用于MD5密码的破解,目前版本为3.1版,其运行界面如图4-118所示。
 
 
图4-118
破解后台密码


打开MD5Crack,输入获得的密文,选择使用字符集中的数字和小写字母,运行界面如图4-119所示。
 
 
图4-119
密码的破解需要耗费很多的系统资源(特别是CPU和内存)和很长的时间,系统资源耗费的一个例子如图4-120所示。密码明文无非是由数字、字母和特殊字符构成,因此破解密码时对各部分比例的选择很重要,本例中已进行了一些尝试性的破解,最后做出了如上的组合选择。
 
图4-120
成功破解后显示如图4-121所示,密码明文为sql111。
 
 
图4-121
步骤9:使用管理员账号登录,对论坛进行修改


在后台管理界面中输入已破解的密码,如图4-122所示。
 
 
图4-122
单击“登录”按钮后显示如图4-123所示。
 
图4-123
现在已经以管理员的身份登录到后台了。如果想进一步控制整个远程主机,可以在“设置管理”中选择“社区基本设置”,找到允许附件文件的类型,添加“|asa”。添加后,论坛将允许上传ASP网页木马,如图4-124所示。
 
图4-124
2.安全解决方案


关注http://www.bbsxp.com发布的升级信息,升级到更高版本。


4.3.3 常见问题与解答


1.问:什么是前台密码和后台密码?


答:论坛系统为了增加其自身的安全性,往往需要进行两次登录才能到达管理平台。管理员第一次登录后,只被允许实现一些简单的管理功能,这些管理功能不会影响论坛整体效果,在第一次登录时所使用的密码就被称为前台密码;在第一次登录的基础上,要求管理员再次进行登录,到达最终的管理平台,这时使用的密码被称为后台密码。第二次登录的入口只有管理员在前台成功登录后才会显示给管理员,普通用户无法访问二次登录的入口。大部分的论坛系统前后台使用同一个管理员账号登录,也有一部分系统使用不一致的前后台账号登录。


2.问:BBS XP论坛5.15版的暴库漏洞为什么有时暴库时会显示服务器内部错误?


答:与论坛服务器配置有关,论坛服务器的设置出现问题,因此导致了部分ASP功能不可用,这时将无法利用暴库漏洞。


3.问:如何加快解密速度?


答:如下几个方面将影响到解密的速度:明文的字符组合、加密算法的选择及破解工具软件的选择。明文的字符组合只能通过猜测,一般破解的顺序先是全数字或全字母、然后才是其他组合,一般密码的长度不会超过16位。知道加密算法后才能有相应的解密措施。破解工具的选择很重要,如MD5Crack的不同版本之间速度差异很大。


成功加密的意义在于破解过程中的耗费远大于破解后所获得的利益。因此,在破解过程中一定要注意到对自身各种资源的耗费情况
 

 

发表评论