我是一个Web应用程序开发人员,使用经典ASP作为服务器端脚本。寻找一个SQL注入演示
我总是通过使用简单的函数为字符串参数加倍单撇号来保护我的应用程序免受SQL注入攻击。
Function ForSQL(strString)
ForSQL = Replace(strString, "'", "''")
End Function
对于数值参数,我使用CINT,CLng函数和CDbl功能。
我经常编写连接查询;我并不总是使用存储过程,我并不总是验证用户输入。
我想问你,如果有人能告诉我针对这行代码工作的攻击:
strSQL = "SELECT Id FROM tUsers WHERE Username='" & _
ForSQL(Left(Request.Form("Username"),20)) & "' AND Password='" & _
ForSQL(Left(Request.Form("Username"),20)) & "'"
这可能是一个平庸的,但我从来没有发现一种攻击的作品。
我问了一个类似的问题:http://stackoverflow.com/questions/8506574/sql-injection-isnt-replace-good-enough – 2012-04-12 18:51:54
http://isc.sans.edu/diary.html?storyid=9397 – HeavenCore 2012-04-12 19:58:05