在网页中插入恶意的js脚本,因为网站没对其过滤,当用户浏览时,就会触发脚本,形成XSS攻击前端
1.反射型 用户输入的注入代经过浏览器传入到服务器后,又被目标服务器反射回来,在浏览器中解析并执行。数据库
2.存储型 用户输入的注入代码,经过浏览器传入到服务器后,被永久存放在目标服务器的数据库或文件中。当用户再次访问这个注入代码的页面就出发了xss漏洞浏览器
3.Dom型xss 它和反射型以及存储型xss的区别在于,dom型xss的代码并不须要服务器解析响应的直接参与,触发xss靠的是浏览器的dom解析,能够认为彻底是客户端的事情。 服务器
4.Flash型xsscookie
1.对于那些半年没有更新的小企业网站来讲,发生XSS漏洞几乎没有什么用
2.劫持用户cookie是最多见的跨站攻击形式,经过在网页中写入并执行脚本执行文件,劫持用户浏览器,将用户当前使用的sessionID信息发送至攻击者控制的网站或服务器中。
3.挂马(水坑攻击)
4.有局限性的键盘记录
5.蠕虫session
1.对前端输入作过滤和编码:dom
2.对输出作过滤和编码:在变量值输出到前端的HTML时进行编码和转义;xss
3.给关键cookie使用http-only。网站