、vBulletin3暴露MD5密码漏洞
从vBulletin 3.0.1到最新3.0.3版本中存在个很严重漏洞由于论坛中“authorize.php”文件对特殊过滤不严使得黑客可以通过特殊代码进行SQL注入攻击获取论坛任意用户密码
论坛密码是经过MD5加密所以黑客得到只是MD5密码不能登录论坛后台管理员页面不过仅在论坛页面登录所能造成破坏也足够可怕了!
下面我就进行模拟攻击让各位管理员了解入侵过程
1.漏洞利用攻击步骤
在命令行下运行该漏洞利用“J-vbbAtt.exe”显示其使用帮助可以看到详细攻击步骤(图1)先输入要攻击论坛链接地址再输入需要破解用户ID号最后就等着软件Software显示这个用户ID密码了
图1攻击步骤目了然
2.确定攻击目标地址
我先用搜索引擎来收集自己攻击目标国内最常见是“CNVBB Studios”工作室推出vBulletin标准版论坛该版本论坛首页代码中包含如下关键词:“vBulletin Version 3.0.1 简体中文翻译和插件制作 NewVBB.com 2004”在百度搜索页面中输入上述关键词或者“Powered by: vBulletin Version 3.0.1”然后点击搜索即可得到大量存在漏洞攻击目标这里以http://www.***.cn/vbb/index.php论坛为例来看看黑客是如何完成攻击
由于存在漏洞文件“authorize.php”是位于网站WebSite根目录“subscriptions”文件夹下所以在窗口“please input the url you wannt attack:”后输入http://www.***.cn/vbb/subscriptions/authorize.php回车后提示输入要攻击目标用户ID值
3.确定要破解密码用户ID值
返回论坛中注册个新用户并登录后点击论坛首页下方“查看管理团队(Team)”链接按钮打开论坛中所有管理员用户名列表(图2)
图2打开用户列表选择破解用户
任意选择其中个管理员“阿朱”点击其名字链接打开用户资料查看页面注意这时候IE浏览器地址栏可以看到网页地址变为了“http://www.***.cn/vbb/member.php?u=12”这里“U=12”中即表示用户名为“阿朱”用户ID值为“12”
4.破解用户密码
在攻击窗口“input the userid you wanna attack:”后输入刚才获得用户ID“12”回车后就开始利用论坛漏洞进行攻击破解了(如图3)
图3破解指定账户密码
破解是需要定时间如果出现破解失败提示很有可能是你用户ID值选择(也不是所有论坛或任意用户都定能够破解成功)不过很幸运是我很快得到了测试论坛中名为“阿朱”用户MD5密码为“9f0a35500b707f5e8824261”
得到该MD5密码后进行MD5暴力破解以破解出原文密码当然暴力破解还原密码思路方法是比较耗费时间这里介绍个速度比较快MD5暴力破解器——MD5CrackSp V2.3速度增强版
下载后运行“MD5Crack2.exe”在“破解单个密文”中输入刚才得到MD5密码然后指定使用字典方式进行破解(图4)
图4使用字典破解指定账号密码
防范:对于这个“authorize.php”过滤不严漏洞vBulletin3开发商暂时还没有提供相应补丁和升级但是MD5密码破解是有定难度因此也不用太过担心这期间应注意管理员密码保护并关注vBulletin3官方网站WebSite(http://www.vbulletin.com/)相信很快就会有补丁推出了
2、vBulletin3爆库漏洞
利用上述漏洞攻击可以得到管理员MD5密码而MD5密码对于般黑客来说难以有进步突破论坛连接MYSQL数据库会用到指定账号所以下面这个vBulletin3爆库漏洞就有点儿可怕了说不定你数据连接密码会被看个彻彻底底!
1.爆库漏洞介绍
vBulletin3.0.1以上版本中当用户提交“http://www.***.com/forum/faq.php?s=&do=ANYTHING&q=%D8&match=all&titlesonly=0”请求时“faq.php”文件脚本对用户提交请求数据不能进行正确处理导致服务器返回包含论坛安装路径信息
2.爆破论坛物理路径
从网上下载这个漏洞利用解压后运行“VBulletin暴库.exe”由于这个攻击需要“.net framework”支持所以首先要保证测试主机上安装了“.net framework”才能正常运行
在界面下方可以看到其使用思路方法只要将论坛网址输入界面地址栏中点击“给我暴”按钮就可以得到网站WebSite论坛物理路径了不过在输入攻击目标网址时不用输入前面“http://”和后面“/”符号只要输入形如“www.***.com/forum”的类地址就可以了
假设攻击目标还是刚才论坛“http://www.***.cn/vbb/index.php”在漏洞地址栏中输入论坛地址“www.***.cn/vbb”点击爆破按钮稍等片刻即可打开论坛网页在页面上方可以看到出错提示:“Warning: Invalid argument supplied for foreach in /usr/vhome/x/i/a/***.cn/www/vbb/s/functions.php _disibledevent=>服务器上存放物理路径为:“/usr/vhome/x/i/a/***.cn/www/vbb/s/functions.php”
图5得到论坛存放物理路径
3.得到论坛数据库配置文件路径
得到“functions.php”文件存放路径有什么用呢?通过下载vBulletin3源代码我们可以知道论坛数据库连接文件“config.php”是存放在安装位置“s”文件夹下因此可以猜出该论坛“config.php”文件物理路径为“/usr/vhome/x/i/a/***.cn/www/vbb/s/config.php”
现在我们打开下载来vBulletin3源看看“config.php”这个文件中内容吧!用记事本打开该文件可以看到里面有关论坛设置很多重要信息如“$servername = 'localhost'”中可以看到数据库服务器主机名/IP地址以及连接数据库使用端口;在“$dbusername = 'root';$dbpassword = '';”中可以看到连接 MYSQL 数据库用户名和密码;在“$dbname = 'forum';”中可以看到数据库名称;在“$admincpdir = 'admincp';$modcpdir = 'modcp';”中可以得到管理员或版主控制面板路径(如图6)
图6获得数据库连接文件
4.对数据库物理路径利用思路
也就是说现在只要能查看网站WebSite论坛中“config.php”文件内容就可以得到 MYSQL 数据库用户名和密码了PHP网页和ASP网页区别不能够直接通过FlashGet下载得到虽然如此但也不是没有办法查看如果大家熟悉PHP下SQL注入话那么定会猜到该如何做了吧?
就是利用SQL注入中“Load_file()”语句来读取该文件内容在这里具体PHP注入过程我们就不详细介绍说明了仅仅给大家个思路留待有兴趣读者去研究我们可在该论坛寻找个注入点然后结合“Union Select”命令构造如“http://www.***.cn/***/display.php?id=123 and 1<> 1 union select 1,2,load_file('config.php文件路径'),4,5,6,7”的类语句从而读出“config.php”文件内容得到数据库MYSQL连接密码
至于文件存放具体磁盘分区我们只能用猜为得到路径添加个盘符如“C:/usr/vhome/x/i/a/***.cn/www/vbb/s/config.php”从C盘开始个个地猜相信比猜测表名和字段名简单得多
5.连接MYSQL数据库
从“config.php”数据库配置文件中可以得到连接MYSQL数据库用户名和密码随便找个SQL连接器用得到数据库用户名和密码连接MYSQL“Insert”插入PHP代码到数据库中再使用“o outfile”得到个Webshell做到这步后面事都简单了
6.防范vBulletin3爆库
vBulletin3这个漏洞目前厂商还没有提供补丁或者升级我们可以采用以下思路方法来暂时进行防范
编辑论坛中“faq.php”文件首先找到如下行:
globalize($_REQUEST, .gif' />('q' => STR, 'match' => STR, 'titlesonly' =>
INT));
在下面增加“$showpage = true;”;然后找到下行:“globalize($_REQUEST, .gif' />('faq' => STR));”在下面增加“$showpage = true;”;最后找到如下代码:“$navbits = construct_navbits($navbits);”在它上面增加“ (!$showpage) { die; }”完成后就可以防范该漏洞了
没有个会永远安全!这里要提醒大家是:安全重在人为只有提高警惕才会有相对安全
最新评论