千鋒教育-做有情懷、有良心、有品質的職業教育機構
1. iframe
2. opener
3. CSRF(跨站請求偽造)
4. XSS(跨站腳本攻擊)
5. ClickJacking(點擊劫持)
6. HSTS(HTTP嚴格傳輸安全)
7. CND劫持 很難通過技術手段完全避免 XSS,但我們可以總結以下原則減少漏洞的產生:
- 利用模板引擎開啟模板引擎自帶的HTML轉義功能。例如: 在ejs中,盡量使用 <%= data %>而不是 <%- data %>;在doT.js 中,盡量使用 {{! data } 而不是 {{= data };在 FreeMarker中,確保引擎版本高于 2.3.24,并且選擇正確的 freemarker.core.OutputFormat。
- 避免內聯事件 盡量不要使用 onLoad="onload('{{data}}')"、onClick="go('{{action}}')" 這種拼接內聯事件的寫法。在 JavaScript 中通過 .addEventlistener() 事件綁定會更安全。
- 避免拼接HTML前端采用拼接HTML的方法比較危險,如果框架允許,使用createElement、 setAttribute 之類的方法實現。或者采用比較成熟的渲染框架,如 Vue/React 等。
- 時刻保持警惕在插入位置為DOM屬性、鏈接等位置時,要打起精神,嚴加防范。
- 增加攻擊難度,降低攻擊后果通過CSP、輸入長度配置、接口安全措施等方法,增加攻擊的難度,降低攻擊的后果。
- 主動檢測和發現 可使用 XSS 攻擊字符串和自動掃描工具尋找潛在的 XSS 漏洞。
相關推薦