富文本编辑器 xss 攻击的防御

易小灯塔
2018-02-24 / 0 评论 / 8,691 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年06月21日,已超过975天没有更新,若内容或图片失效,请留言反馈。

普通xss 攻击,通过html 转义就可以很好地解决

但是富文本编辑器,本身就是允许输入html 标签的,不能转义

需要引入第三方防止xss的包来处理,对文章内html 进行处理

安装

NPM

$ npm install xss 

Bower

$ bower install xss 

或者

$ bower install https://github.com/leizongmin/js-xss.git 

使用方法

在Node.js中使用

var xss = require('xss');
var html = xss('<script>alert("xss");</script>');
console.log(html); 

在浏览器端使用

Shim模式(参考文件 test/test.html):

<script src="https://raw.github.com/leizongmin/js-xss/master/dist/xss.js"></script>
<script>
// 使用函数名 filterXSS,用法一样
var html = filterXSS('<script>alert("xss");</scr' + 'ipt>');
alert(html);
</script> 

AMD模式(参考文件 test/test_amd.html):

<script>
require.config({
  baseUrl: './'
})
require(['xss'], function (xss) {
  var html = xss('<script>alert("xss");</scr' + 'ipt>');
  alert(html);
});
</script> 


0

评论 (0)

取消