动网在asp领域也算一个比较元老的程序,这次在8.2新版里有一个低级的错误.漏洞代码在login.asp 118行左右
......
username=trim(Dvbbs.CheckStr(request("username")))
If ajaxPro Then username = unescape(username)
......
取得的username是先经过检查然后再unescape解码,导致用urlencode模式就可以饶过任何检查,和php的urldecode导致的注射很类似,譬如用%2527就可以提交’过去了.
dvbbs8.2(access/sql)
修补也很简单,将上述代码改成
......
username=trim(Dvbbs.CheckStr(request("username")))
If ajaxPro Then username = trim(Dvbbs.CheckStr(unescape(username)))
......
暂无评论