审查:测试
系统:
bbsxp2008访问的版本是目前的
最新版本
安全审查:
BBSXP是一个简单的ASP SQL和Access作为开发bbsxp2008多风格论坛的最新版本
脆弱性描述:
该manage.asp
文件就
执行SQL语句没有任何过滤,导致注入漏洞的发生
漏洞代码:
<
测试系统:
bbsxp2008访问的版本是目前的最新版本
安全审查:
BBSXP是一个简单的ASP SQL和Access作为开发bbsxp2008多风格论坛的最新版本
脆弱性描述:
该manage.asp文件就执行SQL语句没有任何过滤,导致注入漏洞的发生
漏洞代码:
<
如果cookieusername =空然后
错误(你还没有
登录到论坛)
如果request_method 后然后(误差< >提交错误的方式!你使用的是request_method提交!)
forumid = requestint(forumid )
就=请求(就) /
程序员这里不知道是不是晚上睡觉加班
如果IsNumeric(就)然后
就= int(就) / / SQL语句在这里虽然数字
类型判断,但我们必须跳出这里继续执行以下
forumid =执行(选择forumid从{ tableprefix
线程},就=就)(0)
最后如果
如果BestRole < > 1
主持=执行(选择适中{tableprefix论坛},forumid =forumid )(0)
% < %
最后如果
如果bestrole = 1 ForumID<1
forumidsql =
其他的
forumidsql = 和forumid = forumid
最后如果
选择案例请求(菜单)
案例顶部
如果bestrole = 1
在要求各豪(就)
= int(HO)
执行(更新{{{tableprefix线程}集threadtop = 2,stickydate = DateAdd(sqlchar yyyysqlchar
下一个
succtitle =质量公报的主题,主题ID:的要求(就)
其他的
错误(您的
权限不够)
最后如果
案例untop
如果bestrole = 1
在要求各豪(就)
= int(HO)
执行(更新{{{tableprefix线程}集threadtop = 0,stickydate = ,sqlnowstring就=hoforumidsql )
下一个
succtitle =批量
取消公告,主题ID:的要求(就)
其他的
错误(您的权限不够)
最后如果
…这里省略了一些代码
下一个
updatethreadstatic(就)
succtitle =批量
删除帖子,帖子ID:的要求。形式(,)
案例undelpost
在要求各豪。形式(,)
= int(HO)
rs.openSELECT * FROM { 的帖子在tableprefix }就=就和,豪
if not rs.eof then
Rs()= 1
rs.update
如果Rs(ParentID)= 0,然后执行(更新{ tableprefix线程}
设置可见= 1 } )
最后如果
rs.close
下一个
updatethreadstatic(就)
succtitle =批量
恢复后,邮政编号:的要求。形式(,)
'''''''''''''''''''''''''''''''''''岗位
管理端''''''''''''''''''''''''''''''''''
最后选择
如果succtitle = 然后错误(无效的指令)
日志(succtitle )
消息= succtitle
成功消息,
%>
第二百三十一行到第二百三十五行如下
rs.openSELECT * FROM { 的帖子在tableprefix }就=就和,豪
if not rs.eof then
Rs()= 2
rs.update
如果Rs(ParentID)= 0,然后执行(更新{ tableprefix线程}设置可见= 2 } )
你可以看到,就没有任何过滤,
查询漏洞发生的
原因 试验
方法:
您可以看到文件头仅限制POST提交,因此不允许直接在IE中进行测试。