安全 以下是一則防注入代碼!
希望可以對廣大初程有協助!
<%
Dim GetFlag Rem(提交方式)
Dim ErrorSql Rem(非法字元)
Dim RequestKey Rem(提交資料)
Dim ForI Rem(迴圈標記)
ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid~master~truncate~char~declare" Rem(敏感字元或者詞語用半形 "~" 格開)
ErrorSql = split(ErrorSql,"~")
If Request.ServerVariables("REQUEST_METHOD")="GET" Then
GetFlag=True
Else
GetFlag=False
End If
If GetFlag Then
For Each RequestKey In Request.QueryString
For ForI=0 To Ubound(ErrorSql)
If Instr(LCase(Request.QueryString(RequestKey)),ErrorSql(ForI))<>0 Then
response.write "<script>alert(""警告:\n請不要提交非法參數"");location.href=""Sql.asp"";</script>"
Response.End
End If
Next
Next
Else
For Each RequestKey In Request.Form
For ForI=0 To Ubound(ErrorSql)
If Instr(LCase(Request.Form(RequestKey)),ErrorSql(ForI))<>0 Then
response.write "<script>alert(""警告:\n請不要提交非法參數"");location.href=""Sql.asp"";</script>"
Response.End
End If
Next
Next
End If
%>