过滤掉危险的HTML标记:script,ifame,object_应用技巧

对于提交的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")
%>

时间: 2024-08-11 22:40:21

过滤掉危险的HTML标记:script,ifame,object_应用技巧的相关文章

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

对于提交的HTML代码,如果含有script,iframe,frameset等标记,对网站本身会构成一定的潜在威胁,使用下面的函数可以过滤掉指定的HTML标记. 注: 1.对于单标记(如:<hr />,<br />等),因其对网站本身不会构成威胁,故未将单标记纳过过滤范围. 2.参数strHTML:待过滤处理的HTML代码内容 3.参数strTAGs:为待过滤掉的HTML标记名,各标记名以英文逗号( , )为间隔 复制代码 代码如下:<%  'Wrtten by i{At}C

用正则表达式 动态创建/增加css style script 兼容IE firefox_javascript技巧

str 是表示通过ajax返回的XMLRequest /*动态加载css style*/ function loadStyle(str) { var regExp_src=/<style.*src\s*=\s*["'][^"']*["'].*>[^<>]*<\/style\s*>/gi; var matchArray_src=str.match(regExp_src); alert(matchArray_src[0]); if(matchA

异步加载script的代码_javascript技巧

通过iframe 异步加载script 通过异步请求另一页面的script 是不执行的,只返回html 原文件,因为返回的文本没有经过浏览器的解析执行. 看代码 a1.html 复制代码 代码如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>无标题页</title> </head> <script type="text/javascrip

去除html代码里面的script正则方法_javascript技巧

去除html代码里面的script正则方法 /** * 去除html代码里面的脚本字符(<script ...>...</script>和<script ... /> * @author ob * */ public class Regex { /** * @param args */ public static void main(String[] args) { //注意,这里有大小写 String s = "<script type='text/j

html和body标记应用CSS方法和技巧

 大家都知道对于一个页面来说,最基本的结构呢就是 <html> <head> <!-- 头部信息内容区域 --> </head> <body> <!-- 页面显示内容区域 --> </body> </html> 对于这样的一个结构,不会有人感到陌生,然而往往有时候却是大家越熟悉的东西就容易让人去遗忘了他们的存在.或许你会在想,这个结构这些标签有什么好聊的呢,每个页面都需要他们的啊.是啊,以前我一直也是这么认为的

PHP实现过滤掉非汉字字符只保留中文字符_php技巧

<?php $str = "a 1b 2b<中文>.xxyy字符"; //转换 GB2312 -> UTF-8 $str = mb_convert_encoding($str, 'UTF-8', 'GB2312'); preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches); $str = join('', $matches[0]); //转换 UTF-8 -> GB2312 $str = mb_c

关于shopex同步ucenter的redirect问题,导致script不运行_php技巧

首先此问题来自向这个帖子 http://hi.baidu.com/fire_love_live/item/247276cfda421217b67a24c7 需要说明的是,并非15处需要修改, 其中 有关登陆密码错的那一项建议不要修改 在大约行 557处 复制代码 代码如下: $this->nowredirect('failed',base64_encode(str_replace(array('+','/','='),array('_',',','~'),$_POST['ref_url'])),

郁闷网站被黑,所有文字字段被加入&amp;amp;lt;/title&amp;amp;gt;&amp;amp;lt;/&amp;amp;lt;/title&amp;amp;gt;&amp;amp;lt;/pre&amp;amp;gt;&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;script src=http://1.hao929.cn/ads.js&amp;amp;gt;&amp;amp;lt;/script&amp;amp;gt;&amp;amp;lt;!--

问题描述 郁闷网站被黑,所有文字字段被加入</title></</title></pre>"><scriptsrc=http://1.hao929.cn/ads.js></script><!--大家有没有人,遇到过,怎么解决,关键是堵住漏洞不知道他是怎么办到的,怕以后又被黑网上查了不少地方,中这个的还不少,不过都没说是怎么被黑的,怎么堵漏洞在此先谢过大家 解决方案 解决方案二:察看日志没有具体的环境不好帮你找解决方案三

php 中的4种标记风格介绍_php基础

今天看论坛的时候,看到一新手的错误代码,看了很久都没发现错误.我正纳闷呢?(这是为什么呢?)呵呵. 后来才发现标记问题,他使用的是短标记.而我的php.in配置里并没有开启它.哎惭愧呀! 1.xml风格(标准风格推荐使用) 复制代码 代码如下: <?php echo"这是xml风格的标记"; ?> xml风格的标记是常用的标记,也是推荐使用的标记,服务器不能禁用,该风格的标记在xml,xhtml中都可以使用. 2.脚本风格 复制代码 代码如下: <script lan