0x0 定义
总结:
(1) 在页面显示
(2) 用户可控
满足以上两点就有可能存在xss
0x1反射型
0x2存储型
0x3 DOM型
与反射型相似
也是从get等参数传参
但
反射型传参,接受者是后端,输出到前端
DOM型是,前端js直接拿到参数输出到前端,未经过后端
0x4 修复
0x5 额外注意
alert(xss)和alert("xss") 的区别:
前者中,xss代表的是事件(你也可以理解为和alert同等的函数之类的)
后者中,xss只是显示/存储的内容
具体可以用浏览器的console控制台亲自体验
除了以下例子,还可试下alert(document.cookie)和alert("document.cookie")
和alert("xss")效果相同的还有(/xss/)和('xss')
总结:没加引号的字符串就是有实际意义的,数字忽视引号,alert(1)和alert("1")效果相同