asp get post sql防注入函數
'----實現get請求的注入的攔截-----
dim sql_injdata,Sql_Inj,SQL_Get,Sql_Post,Sql_DATA
SQL_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
SQL_inj = split(SQL_Injdata,"|")
If Request.QueryString<>"" Then
For Each SQL_Get In Request.QueryString
For SQL_Data=0 To Ubound(SQL_inj)
if instr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))>0 Then
Response.Write "<Script Language=JavaScript>alert('參數出錯!'); history.back(-1)</Script>"
Response.end
end if
next
Next
End If
'----我們還要過濾post請求,所以我們還得繼續考慮request.form,這個也是以數組形式存在的,我們只需要再進一次迴圈判斷即可-----
If Request.Form<>"" Then
For Each Sql_Post In Request.Form
For SQL_Data=0 To Ubound(SQL_inj)
if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then
Response.Write "<Script Language=JavaScript>alert('參數出錯!'); history.back(-1)</Script>"
Response.end
end if
next
next
end if