跨站脚本攻击—XSS(Cross Site Script),是指攻击者通过在Web页面中写入恶意脚本,造成用户在浏览页面时,控制用户浏览器进行操作的攻击方式,该漏洞发生在用户端,在渲染过程中发生了不在预期过程中的JavaScript代码执行。假设,在一个服务端上,有一处功能使用了这段代码,他的功能是将用户输入的内容输出到页面上,很常见的一个功能。但是假如这里输入的内容是一段经过构造的js。那么在用户再次访问这个页面时,就会获取使用js在用户的浏览器端执行一个弹窗操作。通过构造其他相应的代码,XSS通常被用于获取Cookie、以受攻击者的身份进行操作等行为。
存在XSS漏洞时,可能会导致以下几种情况:
用户的Cookie被获取,其中可能存在Session ID等敏感信息。若服务器端没有做相应防护,攻击者可用对应Cookie登陆服务器。
攻击者能够在一定限度内记录用户的键盘输入。
XSS蠕虫。
网页挂马;
在访问量极大的一些页面上的XSS可以攻击一些小型网站,实现DDOS攻击的效果。
获取客户端信息,如用户的浏览历史、真实ip、开放端口等;
控制受害者机器向其他网站发起攻击;
利用植入Flash,通过crossdomain权限设置进一步获取更高权限;或者利用Java等得到类似的操作。(不会这个操作,自己没有见过)
利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的操作如发微博、加好友、发私信等操作。
利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。
攻击者通过CSRF等方式以用户身份执行危险操作。