标签:XSS vue 网页 dompurify 恶意 html
XSS是跨站脚本攻击(Cross-Site Scripting)的简称。通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript。
vue官网如下描述v-html
在网站上动态渲染任意 HTML 是非常危险的,因为容易导致 [XSS 攻击]。只在可信内容上使用 v-html
,永不用在用户提交的内容上。
比如下面代码会在浏览器弹出2021
<template>
<section>
<div v-html='htmlString'></div>
</section>
</template>
<script>
export default {
components: {
},
data() {
return {
htmlString: '<img src="http://www.jpg" οnerrοr="alert(2021)"/>'
}
}
}
</script>
<style scoped>
</style>
解决方案如下:
1、安装
npm install vue-dompurify-html --save
2、在vueInject.js添加
import VueDOMPurifyHTML from 'vue-dompurify-html'
Vue.use(VueDOMPurifyHTML)
3、使用v-dompurify-html替代v-html
<div v-dompurify-html='htmlString'></div>
标签:XSS,vue,网页,dompurify,恶意,html 来源: https://blog.csdn.net/dan_seek/article/details/119393080
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。