- XSS
XSS, 即为(Cross Site Scripting), 中文名为跨站脚本(不使用CSS缩写是为了与层叠样式表区分)。是发生在目标用户的浏览器层面上的,当渲染DOM树的过程成执行了不在预期内的JS代码时,就发生了XSS攻击。 - XSS分为反射型XSS,存储型XSS和DOM XSS
(1)反射型XSS:XSS代码放在URL中,作为参数提交到服务器。服务器解析后,作为响应结果发送给浏览器,最终通过浏览器的解析执行。
(2)存储型XSS:XSS代码存放在服务器中,主要是在第一次请求网页后会将XSS代码存储在服务器中,下次再次访问同一网页时直接从服务器获取XSS代码。
(3)DOM XSS:主要是利用浏览器端的代码漏洞,例如window.eval()
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id='div'></div>
<input onchange='test()' />
<script>
function test(){
let div = document.querySelector('#div')
div.innerHTML = event.target.value;
}
</script>
</body>
</html>
例如上边的代码,我在输入框中输入<img src='a' onerror='alert("你被攻击了")'>
,Enter