Javascript XSS 攻击防御

原创
2017/05/26 10:36
阅读数 176

XSS攻击防御主要通过编码阶段和解码阶段实现。编码阶段主要用来过滤危险脚本,从而实现脚本的保存,解码阶段用来还原部分文本,从而实现脚本的显示。

 

编码阶段:

主要实现类似html特殊字符转义,数据库单引号(一个单引号转三个),单双引号转义,特殊字符转义,注释符号过滤,script标签过滤,iframe标签过滤。

解码阶段:

实现危险脚本过滤,危险属性过滤(所有html标签中的javascript事件过滤),危险标签过滤,跨域脚本过滤。

 

开源方案:

使用开源项目来实现,encode.js用于编解码,Pure-JavaScript-HTML5-Parser用于解析HTML标签,类似xmlpull工具。

domParse.js=>https://github.com/blowsie/Pure-JavaScript-HTML5-Parser

encode.js=>https://github.com/mathiasbynens/he

 

 

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部