![7c47641d6b8ea32a218807dda5346d0a.png](https://img-blog.csdnimg.cn/img_convert/7c47641d6b8ea32a218807dda5346d0a.png)
一、概述
XSS(Cross-Site Scripting):跨站脚本攻击是代码注入攻击的一种,将恶意的JavaScript代码注入到前端页面中,用户访问后会执行注入的代码,造成Cookie、账号密码劫持,钓鱼攻击,水坑攻击,CSRF,获取用户隐私信息甚至结合CVE造成命令执行。
二、xss分类
1、Reflected XSS
反射型XSS, 非持续性的XSS,用户点击后才能触发,常见于网站的搜索栏,用户的输入会显示在response中响应,Reflected XSS又可以分为post型和get型。get型可以直接访问触发,而post型如果没有CSRF防护的话可以通过CSRF+post型XSS形成XSRF来触发。
2、 DOM Based XSS
DOM(Document Object Model) 型XSS :不需要 与后台进行交互的XSS,在前端如果调用innerHTML,或者eval函数用url参数进行对页面的控制就很可能存在DOM型XSS 。 3、
Stored XSS
储存型XSS,服务器可能将 用户提交的数据存入数据库显示到前端界面中,如果前端界面没有进行过滤直接输出的话可能导致储存型XSS。如果其他用户也能随意访问这个页面,那么只要访问这个页面的用户都会被攻击。
4、MXSS
突变型XSS,这种XSS最早在2007年提出,主要利用浏览器渲染的一些缺陷,看似一些无害的HTML标签,经过浏览器解析后可能变成XSS代码,具体攻击流程如图1所示。 如:
![``οnlοad=XSS()]()
被解析为: