现在的位置: 首页 > 综合 > 正文

dvbbs 8.2 SQL注射漏洞分析

2013年05月06日 ⁄ 综合 ⁄ 共 597字 ⁄ 字号 评论关闭
漏洞公告:http://seclists.org/bugtraq/2008/May/0330.html

利用方式:一个典型的sql注射漏洞,按照公告里说的用

password=123123&codestr=71&CookieDate=2&userhidden=2&comeurl=index.asp&submit=%u7ACB%u5373%u767B%u5F55&ajaxPost=1&am

漏洞分析:动网在asp领域也算一个比较元老的程序,这次在8.2新版里有一个低级的错误.漏洞代码在login.asp 118行左右

......
username=trim(Dvbbs.CheckStr(request("username")))
If ajaxPro Then username = unescape(username)
......

取得的username是先经过检查然后再unescape解码,导致用urlencode模式就可以饶过任何检查,和php的urldecode导致的注射很类似,譬如用%2527就可以提交’过去了.

修补方案:修补也很简单,将上述代码改成

......
username=trim(Dvbbs.CheckStr(request("username")))
If ajaxPro Then username = trim(Dvbbs.CheckStr(unescape(username)))
......

抱歉!评论已关闭.