javascript过滤危险脚本方法
更新时间:2008年08月22日 13:03:29 作者:
脚本藏身之处不过有四:
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)*\);?
了解他们的规则后,抓虫行动就水到渠成。
test </textarea>
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
test </textarea>
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
expression() test </textarea>
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
这样调用就可以
k1(k2(k3(k4(str))))
这样就是单纯地过滤脚本而已,所谓过滤“危险脚本”应该是能够判断哪些属于“危险"脚本,不危险的就不过滤才对……那可就难办了,相当于防火墙了。
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 全选 注:引入外部Js需再刷新一下页面才能执行]
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
这样调用就可以
k1(k2(k3(k4(str))))
这样就是单纯地过滤脚本而已,所谓过滤“危险脚本”应该是能够判断哪些属于“危险"脚本,不危险的就不过滤才对……那可就难办了,相当于防火墙了。
您可能感兴趣的文章:
- javascript实现网页屏蔽Backspace事件,输入框不屏蔽
- JavaScript实现检查页面上的广告是否被AdBlock屏蔽了的方法
- javascript屏蔽右键代码
- JavaScript屏蔽指定区域内右键菜单
- JavaScript 关键字屏蔽实现函数
- javascript 屏蔽鼠标键盘的几段代码
- 在textarea中屏蔽js的某个function的javascript代码
- 屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
- 实用javaScript技术-屏蔽类
- javascript实现划词标记+划词搜索功能
- JavaScript实现自动对页面上敏感词进行屏蔽的方法
相关文章
解决微信小程序调用moveToLocation失效问题【超简单】
这篇文章主要介绍了解决微信小程序调用moveToLocation失效问题,解决方法超级简单,需要的朋友可以参考下2019-04-04微信小程序chooseImage的用法(从本地相册选择图片或使用相机拍照)
这篇文章主要介绍了微信小程序chooseImage的用法(从本地相册选择图片或使用相机拍照),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-08-08javascript利用apply和arguments复用方法
这篇文章主要介绍了javascript利用apply和arguments复用方法,有需要的朋友可以参考一下2013-11-11
最新评论