XSS(跨站脚本攻击)是攻击者在返回的HTML
中嵌入了Js
脚本。
yarn add xss
import xss from 'xss'
// xss
Object.defineProperty(Vue.prototype, '$xss', {
value: xss
})
<template>
<div>
<p v-html="test"></p> <!-- 点击后有弹框 -->
<p v-html="$xss(test)"></p> <!-- click事件被过滤,点击无效果 -->
</div>
</template>
<script>
export default {
data () {
return {
test: `<a onclick='alert("xss攻击")'>链接</a>`
}
}
}
</script>