2uGF拜客生活常识网 | XSS漏洞uGF拜客生活常识网 | XSS漏洞uGF拜客生活常识网 | 漏洞简介: 代码注入的一种。攻击者通过“HTML注入”的形式篡改了网页内容、插入了恶意脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击。 漏洞危害: 窃取Cookie、XSS蠕虫、DDoS(JavaScript脚本能执行的功能都涵盖) 防御策略: 1 Coookie设置Httponly属性:避免XSS窃取用户Cookie。(浏览器会禁止页面的JavaScript代码读取带有HttpOnly属性的Cookie) 2 输入检查: 检查用户输入的数据是否包含一些特殊字符,如: <、 >、"、'等。可首先在客户端用JavaScript进行检查,但在服务器端必须再次检查一次,因为客户端的检查很容易绕过。其中,客户端检查可阻挡部分误操作的正常用户,节省服务器资源、避免安全产品误报。 3 输出检查:在输出数据之前,需对字符串进行编码处理。注意: 不同的输出位置应采用不同的编码方式: (1) 输出到HTML普通标签、HTML普通属性中: 需要进行HTML实体编码,如: 使用 ESAPI 的 ESAPI.encoder().encodeForHTMLAttribute() 方法进行转码 & –> & < –> < > –> > ” –> " ' –> ' 其中,普通标签指除script外的标签,普通属性指除href、src、style、action、on事件之外的属性 (2) 输出到中script标签、on事件属性中: 需要进行JavaScript编码, 如: 使用 ESAPI 的 ESAPI.encoder().encodeForJavaScript() 方法进行转码 (3) 输出到CSS(css文件、style标签、style属性)中: 需要进行CSS编码, 如: 使用 ESAPI 的 ESAPI.encoder().encodeForCSS() 方法进行转码 (4) 输出到URL(href属性)中: 需要进行URL编码,如:使用 ESAPI 的 ESAPI.encoder().encodeForURL() 方法进行转码uGF拜客生活常识网 | uGF拜客生活常识网
|