当前位置: 首页 > 图文教程 > 网络编程 > ASP > 过滤掉危险的HTML标记:script,ifame,object

ASP
在ASP程序中实现数据库事务控制
怎样开始一个ASP网站的设计
ASP中使用ServerVariables集合详解
关于解决商务平台ASP程序的源代码泄漏设想与思考
ASP通用模板类
javascript利用xmlhttp获得服务器时钟的方法
asp+oracle分页程序类(XDOWNPAGE2.0)
ASP中实现小偷程序的原理和简单
asp中vbscript访问xml文件
ASP防SQL注入攻击程序
用ASP读INI配置文件的函数
asp实现关键词获取(各搜索引擎,gb2312及utf-8)
xmlhttp组件获取远程文件并筛选出目标数据
XMLHTTP Get HTML页面时的中文乱码之完全客户端Script解决方案
WEB打印设置解决方案一(通过修改注册表改变IE打印设置)
WEB打印设置解决方案二(利用ScriptX.cab控件改变IE打印设置)
WEB打印设置解决方案三(FileSystem组件实现WEB打印)
WEB打印设置解决方案四(在ASP中实现网络打印功能)
ASP实用技巧 强制刷新网页
Access通用-自动替换数据库中的字符串

ASP 中的 过滤掉危险的HTML标记:script,ifame,object


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

对于提交的HTML代码,如果含有script,iframe,frameset等标记,对网站本身会构成一定的潜在威胁,使用下面的函数可以过滤掉指定的HTML标记。
注:
1.对于单标记(如:<hr />,<br />等),因其对网站本身不会构成威胁,故未将单标记纳过过滤范围。
2.参数strHTML:待过滤处理的HTML代码内容
3.参数strTAGs:为待过滤掉的HTML标记名,各标记名以英文逗号( , )为间隔
复制代码 代码如下:
<%
'Wrtten by i{At}CnLei.Com
Function lFilterBadHTML(byval strHTML,byval strTAGs)
Dim objRegExp,strOutput
Dim arrTAG,i
arrTAG=Split(strTAGs,",")
Set objRegExp = New Regexp
strOutput=strHTML
objRegExp.IgnoreCase = True
objRegExp.Global = True
For i=0 to UBound(arrTAG)
objRegExp.Pattern = "<"&arrTAG(i)&"[\s\S]+</"&arrTAG(i)&"*>"
strOutput = objRegExp.Replace(strOutput, "")
Next
Set objRegExp = Nothing
lFilterBadHTML = strOutput
End Function

'Example
Dim sPageCont
sPageCont= "...网页正文内容..."
sPageCont=FilterBadHTML(sPageCont,"script,iframe,object,table")
%>