我是一個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