asp get和post数据接收过滤

时间:2022-06-01 19:41:15

代码如下:


<% 
'--------定义部份------------------ 
Dim XH_Post,XH_Get,XH_In,XH_Inf,XH_Xh,XH_db,XH_dbstr 
'自定义需要过滤的字串,用 "|" 分隔 
XH_In = "'|;|and|exec|insert|select|delete%20from|update|count|*|%|chr|mid|master|truncate|char|declare|drop%20table|from|net%20user|xp_cmdshell|/add|net%20localgroup%20administrators|Asc|char" 
'---------------------------------- 
%> 
<% 
XH_Inf = split(XH_In,"|") 
'--------POST部份------------------ 
If Request.Form<>"" Then 
For Each XH_Post In Request.Form 
For XH_Xh=0 To Ubound(XH_Inf) 
If Instr(LCase(Request.Form(XH_Post)),XH_Inf(XH_Xh))<>0 Then 
Response.Write "<Script Language=JavaScript>alert('请不要在参数中包含非法字符尝试注入!');</Script>" 
Response.Write "非法操作!系统做了如下记录↓<br>" 
Response.Write "操作IP:"&Request.ServerVariables("REMOTE_ADDR")"<br>" 
Response.Write "操作时间:"&Now"<br>" 
Response.Write "操作页面:"&Request.ServerVariables("URL")"<br>" 
Response.Write "提交方式:POST<br>" 
Response.Write "提交参数:"&XH_Post"<br>" 
Response.Write "提交数据:"&Request.Form(XH_Post) 
Response.End 
End If 
Next 
Next 
End If 
'---------------------------------- 
'--------GET部份------------------- 
If Request.QueryString<>"" Then 
For Each XH_Get In Request.QueryString 
For XH_Xh=0 To Ubound(XH_Inf) 
If Instr(LCase(Request.QueryString(XH_Get)),XH_Inf(XH_Xh))<>0 Then 
Response.Write "<Script Language=JavaScript>alert('请不要在参数中包含非法字符尝试注入!');</Script>" 
Response.Write "非法操作!系统做了如下记录↓<br>" 
Response.Write "操作IP:"&Request.ServerVariables("REMOTE_ADDR")"<br>" 
Response.Write "操作时间:"&Now"<br>" 
Response.Write "操作页面:"&Request.ServerVariables("URL")"<br>" 
Response.Write "提交方式:GET<br>" 
Response.Write "提交参数:"&XH_Get"<br>" 
Response.Write "提交数据:"&Request.QueryString(XH_Get) 
Response.End 
End If 
Next 
Next 
End If 
'---------------------------------- 
%>