XSS全称(Cross Site Scripting)跨站脚本攻击
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
输入您的昵称:<input type="text">
<button>提交</button>
<div></div>
<script>
document.querySelector("button").addEventListener("click",()=>{
let x = document.querySelector("input").value
document.querySelector("div").innerHTML = "欢迎:"+x
},false)
</script>
</body>
</html>
但是如果用户输入
<a onclick="alert(1)">点击出现弹框!</a>
结果你自己试试吧.
解决办法:
其实无论是哪一种xss攻击手段,其原理都是使用了“xss就是在页面执行你想要的js”,也就是说,只要遵循一个原则——后端永远不信任前端输入的任何信息,无论是输入还是输出,都对其进行html字符的转义,那么漏洞就基本不存在了。