當前位置:
首頁 > 最新 > 計算機安全漏洞之XSS攻擊

計算機安全漏洞之XSS攻擊

1、什麼是XSS攻擊

XSS是一種經常出現在web應用中的計算機安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。比如這些代碼包括HTML代碼和客戶端腳本。攻擊者利用XSS漏洞旁路掉訪問控制——例如同源策略(same origin policy)。這種類型的漏洞由於被黑客用來編寫危害性更大的網路釣魚(Phishing)攻擊而變得廣為人知。對於跨站腳本攻擊,黑客界共識是:跨站腳本攻擊是新型的「緩衝區溢出攻擊「,而JavaScript是新型的「ShellCode」。

2、XSS原理

JavaScript可以用來獲取用戶的Cookie、改變網頁內容、URL跳轉,那麼存在XSS漏洞的網站,就可以盜取用戶Cookie、黑掉頁面、導航到惡意網站。

通常使用方式來載入外部腳本,而在x.txt中就存放著攻擊者的惡意JavaScript代碼,這段代碼可能是用來盜取用戶的Cookie,也可能是監控鍵盤記錄等惡意行為。

3、XSS有哪些類型?

反射型:簡單的描述就是把用戶輸入的數據反射給瀏覽器,這個數據可能是Html代碼或者js代碼,反射後讓瀏覽器去執行。

存儲型:把用戶輸入的數據(比如惡意的js代碼)存儲在伺服器端,具有很強的穩定性,危害時間長。

DOM Based XSS:這種不是按照存儲在哪裡來劃分的,可以說是反射型,由於歷史原因,歸為一類,通過改變DOM結構形成的XSS稱之為DOM Based。

4、如何防禦XSS呢?

1)給關鍵的Cookie設置HttpOnly屬性

這樣能夠避免js讀取Cookie信息(設置後有助於緩解XSS,但是XSS除了劫持Cookie之外,還可以模擬用戶的身份進行操作)。

2)進行輸入檢查

如果僅僅在客戶端通過JS來做輸入校驗,有可能會被攻擊者繞過,WEB開發中的普遍做法是同時在客戶端和服務端做校驗。這種輸入檢查的方式也稱之為XSS Filter。

3)輸出檢查

一般說來,除了富文本輸出之外,在變數輸出到HTML頁面時,可以使用編碼或者轉義的方式來防禦XSS攻擊。

4)防禦DOM BasedXSS

前面提到的集中方法,對於這種類型不太適用,需要特別對待,那如何才能防禦呢?

$var輸出到,應該執行一次javasriptEncode,其次在doument.write輸出到HTML頁面時,如果是輸出到事件或者腳本,可以再做一次javaScriptEncode,如果是輸出到HTML內容或者屬性,則可以做一次HtmlEncode。

GDCA(數安時代)擁有國內自主簽發信鑒易 TrustAUTH SSL證書以及是國際多家知名品牌:GlobalSign、Symantec、GeoTrust SSL證書指定的國內代理商。為了讓國內更多的網站升級到安全的https加密傳輸協議。近日,GDCA推出多種國際知名SSL證書以及代碼簽名證書優惠活動,實現HTTPS加密並展示網站以及程序的真實身份信息。詳情請資訊GDCA產品官網在線客服https://www.trustauth.cn/。

文章轉載:https://www.trustauth.cn/wiki/15921.html


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 數安時代GDCA 的精彩文章:

常見的LNMP 502錯誤解決方法
深入剖解HSTS,啟動HTTPS的強制機制
SQL注入攻擊與防禦
Nginx 反向代理伺服器的工作原理
簡述Mariadb 設置root密碼以及修改root密碼的方法

TAG:數安時代GDCA |