关于防止xss攻击使用xss.js出现的一些报错

html/js/css 专栏收录该内容
3 篇文章 0 订阅

我们在看使用前台过滤script脚本的时候使用到了xss.js,在它的官方文档中写了这样的一段使用说明:

在浏览器端使用

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>

如果按照这段使用说明来测试这个短代码的时候是会报如下的错误,

Refused to execute script from 'https://raw.githubusercontent.com/leizongmin/js-xss/master/dist/xss.js' because its MIME type ('text/plain') is not executable, and strict MIME type checking is enabled.

这个是因为你没有给type类型没写或者是写错了,按提示应给成text/plain的类型,但是修改过来,你以为就可以了,你想错了!

但是经过测试,即使这里不报错了可以正常加载了但是使用它的filterXss的方法的时候还是会报错,

Uncaught ReferenceError: filterXSS is not defined
    at new_file.html?__hbt=1562816031213:12

说你的这个filterXss的方法没有定义,这个应该还是没哟加载xss.js

原本想直接就引用它的js了,省的还得访问自己的静态资源,节省带宽,也许人家的访问速度比咱还快,最后还是被现实给打败了,不能用啊!

所以我最后把他js_xss的项目从git下载下来,直接从它的项目中拷贝一份js放在自己的项目中,然后再想一开始那样引用就没有问题了

当然了,我认为光从前端过滤xss攻击还是不可以的,当他给你通过接口直接提交参数的时候你的前端xss就不会过滤,

所以还是需要在后端加一层xss过滤,前端设置只是为了减少后端的过多操作。

  • 0
    点赞
  • 1
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值