XSS攻擊原理
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
簡單說,進行XSS攻擊和寫網文差不多,區(qū)別只是二者當中一個提交的是文章,另一個提交的是腳本。 通過頁面的輸入框提交文章的那個人就叫“網文博主”,他的文章是靜態(tài)的,只是向他人傳遞信息,表達思想,被其他人看到而已,從功能上說是完全無害的。 而以相同方式提交腳本的那個人則是“XSS攻擊者”,他提交的腳本用戶看不到,但用戶的瀏覽器卻可以識別并執(zhí)行它們,從功能上說有巨大的安全風險。 ![]() 這種非法注入的腳本所帶來的具體風險,視腳本具體功能而定。其中風險最大的一個莫過于竊取用戶本地cookie文件中的“會話”信息,即 session ID。 session ID本質是個身份信息,攻擊者通過向被攻擊者網頁注入腳本,再通過腳本獲取其身份信息,就可以用他的身份信息在相關網站做所有能做的事了。 具體來說可以在竊取到用戶身份信息后,再構造一個向攻擊者服務器發(fā)送的請求,以便將身份信息提交給攻擊者。 ![]() 當然,你不能用普通的Ajax請求,因為“跨域限制”機制會阻攔這個請求。 但仍然可以利用web的JavaScript腳本加載與執(zhí)行的漏洞,通過構建jsonp請求將被攻擊者身份信息泄露出去。 不過請放心,這個jsonp的漏洞其實也被打補丁了。那就是使用CSP(Content Security Policy),直譯即“內容安全策略”。 CSP可以制定一個白名單,讓所有在白名單外的腳本都無法執(zhí)行,這自然就包括攻擊者注入的惡意腳本。 不過考慮到CSP只是被當前主流瀏覽器支持,要想把使用老舊瀏覽器的用戶也都照顧到,最好同時配合使用傳統(tǒng)的反XSS手段。 具體說就是對用戶的輸入進行過濾和判斷,如果發(fā)現是腳本而非普通的文本,就要對腳本進行去除或者轉義,這樣它就無法被執(zhí)行了。 -END-閱讀原文:原文鏈接 該文章在 2025/8/9 8:48:33 編輯過 |
關鍵字查詢
相關文章
正在查詢... |