Web安全之XSS
一.什么是XSS 1.XSS攻击即为(Cross Site Scripting), 中文为跨站脚本(但实际上并不是所有的XSS都需要跨站)。这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当正常用户访问该页面时,则可导致嵌入的恶意脚本代码的执行,从而达到恶意攻击用户的目的。 2.XSS类型: (1)反射型XSS(非持久型XSS):发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器解析后响应,在响应内容中出现这段XSS代码。最后浏览器解析执行。(例如: http://www.foo.com/xss/a1.php?x=<script>alert(1)</script> ) (2)存储型XSS(持久型XSS):提交的XSS会存储在服务端(不管是数据库、内存还是文件系统等),下次请求目标页面时不用再提交XSS代码。(例如:留言板XSS,用户提交一条包含XSS代码的留言存储到数据库,目标用户查看留言板时,留言的内容会从数据库查询出来并显示,浏览器发现有XSS代码,就当作正常的HTML与JS解析执行,于是就出发了XSS攻击。) (3)DOM XSS:此时并不需要服务器解析响应的直接参与,触发XSS靠的就是浏览器的DOM解析。可以认为完全是客户端的事情。(例如:http://www.foo.com/xssme/html#alert(1)