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

ASP
ASP编程中20个非常有用的例子
省名与城名下拉选择框联动
ASP有函数可以把某个网页通过STREAM下载吗?
用Regular Expression来改变HTML代码
控制输出字符串的长度,可以区别中英文
教你做小偷程序 容易学
小偷程序原理和简单示例
好漂亮的钟[代码]
实现WEB中的@虚拟域名系统 原理篇
ASP对excel的操作
将服务器端文件夹下的文件,按文件建立的时间先后排序
存储过程编写经验和优化措施
存储过程入门
在ASP中怎樣用Excel寫報表
在ASP中使用Oracle数据库技巧(1)
在ASP中使用Oracle数据库技巧(2)
在ASP中使用断开的记录集
披著羊皮的大野狼 Session
两级联动的select XML版
判断checkbox是否至少有选择一项

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 227 ::
收藏到网摘: 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
'----------------------------------
%>