Open muwoo opened 6 years ago
XSS 全称Cross SiteScript,因为与 CSS 混淆,所以命名 XSS。跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性。其原理是攻击者向有XSS漏洞的网站中输入(传入)恶意的HTML代码,当其它用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如,盗取用户Cookie、破坏页面结构、重定向到其它网站等。
Cross SiteScript
攻击者使被攻击者在浏览器中执行脚本后,如果需要收集来自被攻击者的数据(如cookie或其他敏感信息),可以自行架设一个网站,让被攻击者通过JavaScript等方式把收集好的数据作为参数提交,随后以数据库等形式记录在攻击者自己的服务器上。
常用的XSS攻击手段和目的有:
盗用cookie,获取敏感信息。 利用植入 Flash,通过crossdomain权限设置进一步获取更高权限;或者利用Java等得到类似的操作。 利用iframe、frame、XMLHttpRequest或上述Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作。 利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。 在访问量极大的一些页面上的 XSS 可以攻击一些小型网站,实现DDoS攻击的效果。
crossdomain
iframe、frame、XMLHttpRequest
DDoS
记住一句至理名言——“所有用户输入都是不可信的。”(注意: 攻击代码不一定在中)
输入过滤,对用户提交的数据进行有效性验证,仅接受指定长度范围内并符合我们期望格式的的内容提交,阻止或者忽略除此外的其他任何数据。 输出转义,当需要将一个字符串输出到Web网页时,同时又不确定这个字符串中是否包括XSS特殊字符,为了确保输出内容的完整性和正确性,输出HTML属性时可以使用HTML转义编码(HTMLEncode)进行处理,输出到 Githubissues.
XSS 攻击
XSS 全称
Cross SiteScript
,因为与 CSS 混淆,所以命名 XSS。跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性。其原理是攻击者向有XSS漏洞的网站中输入(传入)恶意的HTML代码,当其它用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如,盗取用户Cookie、破坏页面结构、重定向到其它网站等。攻击方式
攻击者使被攻击者在浏览器中执行脚本后,如果需要收集来自被攻击者的数据(如cookie或其他敏感信息),可以自行架设一个网站,让被攻击者通过JavaScript等方式把收集好的数据作为参数提交,随后以数据库等形式记录在攻击者自己的服务器上。
常用的XSS攻击手段和目的有:
盗用cookie,获取敏感信息。 利用植入 Flash,通过
crossdomain
权限设置进一步获取更高权限;或者利用Java等得到类似的操作。 利用iframe、frame、XMLHttpRequest
或上述Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作。 利用可被攻击的域受到其他域信任的特点,以受信任来源的身份请求一些平时不允许的操作,如进行不当的投票活动。 在访问量极大的一些页面上的 XSS 可以攻击一些小型网站,实现DDoS
攻击的效果。防范
记住一句至理名言——“所有用户输入都是不可信的。”(注意: 攻击代码不一定在中)
1. 使用XSS Filter
输入过滤,对用户提交的数据进行有效性验证,仅接受指定长度范围内并符合我们期望格式的的内容提交,阻止或者忽略除此外的其他任何数据。 输出转义,当需要将一个字符串输出到Web网页时,同时又不确定这个字符串中是否包括XSS特殊字符,为了确保输出内容的完整性和正确性,输出HTML属性时可以使用HTML转义编码(HTMLEncode)进行处理,输出到 Githubissues.