当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript过滤危险脚本方法

Javascript
window.onload 加载完毕的问题及解决方案(下)
jQuery 版本的文本输入框检查器Input Check
jquery Firefox3.5中操作select的问题
jquery 1.3.2 IE8中的一点点的小问题解决方法
javascript div 遮罩层封锁整个页面
javascript 页面只自动刷新一次
Javascript 区别浏览器 代码
checkbox 复选框不能为空
Prototype 学习 Prototype对象
Prototype 学习 工具函数学习($方法)
Prototype 学习 工具函数学习($A方法)
Prototype 学习 工具函数学习($w,$F方法)
Prototype Object对象 学习
Prototype Function对象 学习
Prototype Date对象 学习
JavaScript 事件对象的实现
JavaScript 事件查询综合
JavaScript 继承详解(一)
JavaScript 继承详解(二)
JavaScript 继承详解(三)

Javascript 中的 javascript过滤危险脚本方法


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

脚本藏身之处不过有四: 1、<script>标签、<link>标签、<style>标签、iframe标签 2、on开头的标签属性 3、javascript(vbscript)伪协议 4、css的epression 下面是他们的字符串规则:
1、<(script|link|style|iframe)(.|\n)*<\/\1>\s*
2、\s*on[a-z]+\s*=\s*("[^"]+"|'[^']+'|[^\s]+)\s*(?=>)
3、\s*(href|src)\s*=\s*("\s*(javascript|vbscript):[^"]+"|'\s*(javascript|vbscript):[^']+'|(javascript|vbscript):[^\s]+)\s*(?=>)
4、epression\((.|\n)*\);?
了解他们的规则后,抓虫行动就水到渠成。
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

这样调用就可以
k1(k2(k3(k4(str))))
这样就是单纯地过滤脚本而已,所谓过滤“危险脚本”应该是能够判断哪些属于“危险"脚本,不危险的就不过滤才对……那可就难办了,相当于防火墙了。