當前位置:
首頁 > 最新 > HTML5安全風險詳析之Web Worker攻擊

HTML5安全風險詳析之Web Worker攻擊

什麼是Web Worker?

在web worker規範產生之前,dom渲染和javascript代碼執行是在同一個瀏覽器線程中執行的。也就是說:渲染dom的時候不能執行javascript代碼,執行javascript代碼的時候,UI界面會暫停響應。如果javascript代碼執行時間很長,那麼UI就會無響應,這就是所謂的頁面卡死。Web Workers是 HTML5 提供的一個javascript多線程解決方案,我們可以將一些耗時的javascript代碼交由web Worker運行而不凍結用戶界面。也就是說web worker和UI界面是運行在不同線程中的。

由於JavaScript是單線程執行的,在執行過程中瀏覽器不能執行其它javascript腳本,UI渲染線程也會被掛起,從而導致瀏覽器進入僵死狀態。使用WebWorker可以將計算過程放入一個新線程里去執行將避免這種情況的出現。這樣我們可以同時執行多個js任務而不會阻塞瀏覽器,非常適合非同步交互和大規模計算,這在以前是很難做到的。

WebWorker攻擊

1、Botnet

攻擊的方式包括DDos攻擊、發送垃圾郵件,用戶一旦訪問惡意頁面或者網站時,頁面的惡意代碼就能把用戶的瀏覽器當作肉雞,利用WebWorker大規模執行多線程攻擊,例如DDos攻擊、發送垃圾郵件或者進行網路嗅探。

DDOS攻擊(分散式拒絕服務攻擊)

2、postMessage帶來的問題

WebWorker無法訪問DOM,只能通過postMessageAPI和主線程通信。postMessage在HTML5中被引入,用來解決跨域或者跨線程數據交互的問題。但是如果messaging可以接收任何來源的信息,此頁面有可能會被攻擊;另外postMessage不通過伺服器,如果不經過驗證和過濾,可能成為XSS注入點。例如如下代碼沒有對輸入數據進行驗證和清洗,攻擊者完全可以構造惡意的data來注入頁面DOM,構造XSS攻擊,形如「>」等等。

攻擊工具

Ravan是一個JS的分散式計算系統,可以用HTML5Web Worker通過後台加密的JS多線程腳本來執行蠻力攻擊。

預防之道

1、對於用戶來說,不要訪問不安全的站點。

2、使用postMessage時需要驗證來源可信;另外不要使用innerHTML,現代瀏覽器提供了textContent屬性,可以幫助對HTML標籤進行過濾,或者你可以自行編寫過濾的邏輯和函數。

以上就是關於Web Worker攻擊的詳細介紹,希望對大家的學習有所幫助。

GDCA(數安時代)擁有國內自主簽發信鑒易 TrustAUTH SSL證書以及是國際知名品牌:GlobalSign、Symantec、GeoTrust SSL證書國內金牌代理商,滿足各種用戶對SSL的各種要求,廣大用戶可根據自身的需求向GDCA申請合適的SSL證書,GDCA的專業團隊將會為您提供最佳的HTTPS解決方案。

文章轉載:https://www.trustauth.cn/ca-question/19051.html

點擊展開全文

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

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


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

全能代理:Socks代理
揭曉公共免費WiFi背後的大黑洞
各種網路安全威脅大合集
WebService三要素之SOAP協議
軟體架構風格之RESTful

TAG:數安時代GDCA |