当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp get和post数据接收过滤

ASP
微软建议的ASP性能优化28条守则(6)
微软建议的ASP性能优化28条守则(7)
微软建议的ASP性能优化28条守则(8)
微软建议的ASP性能优化28条守则(9)
用ASP建立站内搜索
ASP开发中数据库文件调用(1)
ASP开发中数据库文件调用(2)
ASP开发中数据库文件调用(3)
基于ASP的编程常见问题
asp编写的加密和解密类
模似windows XP 左侧的菜单效果(1)
模似windows XP 左侧的菜单效果(2)
模似windows XP 左侧的菜单效果(3)
web应用程序中的数据库连接(1)
web应用程序中的数据库连接(2)
ASP.net中md5加密码的方法
不能使用asp标记的时候的一个解决办法
asp 用存储过程实现数据分页
ASP 五大高效提速技巧
ASP+Access的安全隐患及对策

ASP 中的 asp get和post数据接收过滤


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 231 ::
收藏到网摘: n/a

asp get和post数据接收过滤函数,一些为了安全
复制代码 代码如下:

<%
'--------定义部份------------------
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
'----------------------------------
%>