|
Q7:加密是否能有效防護XSS攻擊?
通常大家會認為如果網站使用了HTTPS,提供更有保障的安全,可以幸免于XSS攻擊。其實這是一種誤解。HTTPS僅提供傳輸層的安全,在應用層仍然面臨XSS的威脅。
Q8:XSS漏洞是否可能引起非法執(zhí)行命令?
如果瀏覽器設置安全性不夠時,XSS漏洞允許插入JavaScript,也就意味著攻擊者可能獲取受限的客戶端執(zhí)行權限。如果攻擊者進而利用瀏覽器的漏洞,就有可能在客戶端非法執(zhí)行命令。簡言之,XSS漏洞有助于進一步利用瀏覽器漏洞。
Q9:從網站開發(fā)者角度,如何防護XSS攻擊?
來自應用安全國際組織OWASP的建議[3],對XSS最佳的防護應該結合以下兩種方法:驗證所有輸入數據,有效檢測攻擊;對所有輸出數據進行適當的編碼,以防止任何已成功注入的腳本在瀏覽器端運行。具體如下:
·輸入驗證:某個數據被接受為可被顯示或存儲之前,使用標準輸入驗證機制,驗證所有輸入數據的長度、類型、語法以及業(yè)務規(guī)則。
·強壯的輸出編碼:數據輸出前,確保用戶提交的數據已被正確進行entity編碼,建議對所有字符進行編碼而不僅局限于某個子集。
·明確指定輸出的編碼方式(如ISO 8859-1或 UTF 8):不要允許攻擊者為你的用戶選擇編碼方式。
·注意黑名單驗證方式的局限性:僅僅查找或替換一些字符(如"<" ">"或類似"script"的關鍵字),很容易被XSS變種攻擊繞過驗證機制。
·警惕規(guī)范化錯誤:驗證輸入之前,必須進行解碼及規(guī)范化以符合應用程序當前的內部表示方法。請確定應用程序對同一輸入不做兩次解碼。
Q10:從網站用戶角度,如何防護XSS攻擊?
當你打開一封Email或附件、瀏覽論壇帖子時,可能惡意腳本會自動執(zhí)行,因此,在做這些操作時一定要特別謹慎。建議在瀏覽器設置中關閉JavaScript。如果使用IE瀏覽器,將安全級別設置到“高”。具體可以參照瀏覽器安全的相關文章。
這里需要再次提醒的是,XSS攻擊其實伴隨著社會工程學的成功應用,需要增強安全意識,只信任值得信任的站點或內容。
Q11:如果修補XSS漏洞對網站來說困難較大,不修補會怎樣?
如果不能及時修補XSS漏洞,網站可能成為攻擊者攻擊第三方的媒介,公信度受損;網站用戶成為受害者,敏感信息泄漏,F實中,確實存在某些無法修補漏洞的客觀原因,如Web應用開發(fā)年代久遠或者整改代碼需要付出過于高昂的代價。這種情況下, 選擇Web安全網關會是一種合理選擇。正確應用這類安全工具,會極大緩解XSS攻擊,降低安全風險。
Q12:下一代XSS會是怎樣的?
隨著AJAX(Asynchronous JavaScript and XML,異步JavaScript和XML)技術的普遍應用,XSS的攻擊危害將被放大。使用AJAX的最大優(yōu)點,就是可以不用更新整個頁面來維護數據,Web應用可以更迅速地響應用戶請求。AJAX會處理來自Web服務器及源自第三方的豐富信息,這對XSS攻擊提供了良好的機會。AJAX應用架構會泄漏更多應用的細節(jié),如函數和變量名稱、函數參數及返回類型、數據類型及有效范圍等。AJAX應用架構還有著較傳統(tǒng)架構更多的應用輸入,這就增加了可被攻擊的點。 |
|
【收藏】【打印】【進入論壇】 |
|
|
|
|
|
|
|