每日最新頭條.有趣資訊

這段 JavaScript 代碼能挖出你所有的訪問記錄!

有沒有想過,簡單的一段JavaScript代碼就能嗅探出瀏覽器標簽頁上的資訊,甚至找出你的訪問記錄?更有甚者,就連Tor瀏覽器都不放過。

——沒錯,最近有一篇論文中就分析了這一問題。

作者 | Thomas Claburn

譯者 | 彎月

責編 | 郭芮

出品 | CSDN(ID:CSDNnews)

近期,電腦專家們演示了一種旁路攻擊技術,能越過最近瀏覽器引入的隱私防禦策略,跟蹤瀏覽器的行為,甚至連Tor瀏覽器都不能幸免。其結論是,一個瀏覽器標簽頁中的惡意JavaScript代碼可以嗅探其他標簽頁,並找出你曾經訪問過的網站。

這些資訊可以讓廣告商根據你的興趣定向推送廣告,或者僅僅是收集你的個人興趣供以後使用。

研究者Anatoly Shusterman、Lachlan Kang、Yarden Haskal、Yosef Melster、Prateek Mittal、Yossi Oren、Yuval Yarom分別來自以色列內蓋夫的Ben-Gurion大學,澳大利亞的阿德萊德大學,和美國的普林斯頓大學,他們發現了一種基於處理器緩存的網站指紋攻擊技術,能利用JavaScript收集訪問過的網站的資訊。

描述該技術的論文發布在ArXiv上,題為“Robust Website Fingerprinting Through the Cache Occupancy Channel”(https://arxiv.org/pdf/1811.07153.pdf)。

“我們演示的這種攻擊能洩露‘人類的秘密’:攻擊者獲知用戶訪問過的網站,就能獲知用戶的很多秘密,如性取向、宗教信仰、政治傾向、健康狀況等。”Ben-Gurion大學的Yossi Oren和阿德萊德大學的Yuval Yarom在本周給The Register的郵件中說。

因此,雖然這種攻擊並不像遠程攻擊技術那樣能執行任意代碼或洩露核心記憶體,但Oren和Yarom懷疑,他們的瀏覽器指紋方法有可能會被用來竊取電腦的密碼,如加密的秘鑰,或已安裝的易受攻擊的軟體。

有些情況下,這種攻擊甚至能對那些期待利用Tor來保守訪問網站的秘密的用戶產生嚴重的影響。

旁路攻擊(或稱“短暫執行攻擊”)需要觀察電腦系統的某個部分,收集資訊以推斷其他特權資訊。今年發現的Spectre、Meltdown和Foreshadow等脆弱性都有潛在的可能性通過旁路攻擊觸發。

Oren和Yarom說,該攻擊技術運行在比Spectre更底層的地方。“一些Spectre不能運行的地方(比如跨越進程邊界),這種攻擊也能運行,而且用來防禦Spectre的CPU補丁也不能阻止它。而另一方面,Spectre攻擊能獲得的資訊比我們的攻擊方法更詳細。”

減輕這類攻擊的一種方式是限制對高精度定時器的訪問,因為旁路數據可以通過高精度定時器獲得。例如,在Spectre和Meltdown最初被發現時,Mozilla就說它會在Firefox瀏覽器中降低時間源的精度,或者乾脆禁用它。

但最新的瀏覽器指紋技術並不需要高精度定時器,因為它的攻擊目標是瀏覽器的處理器緩存佔用。

“緩存佔用的度量就是在一端固定時間內整個緩存被訪問的佔多少百分比。”Oren和Yarom解釋。“瀏覽器非常佔用記憶體,因為它要從網絡上接收大量數據,並在螢幕上繪製各種輸出結果。這意味著它在加載頁面時會佔用相當多的緩存。”

而且,這種攻擊方式並不依賴於緩存的布局,因此用來降低風險的緩存布局隨機化技術對此毫無用處。該攻擊方式也不會被基於網絡的指紋防禦措施影響,因為瀏覽器不是從網絡上獲取數據,而是從響應緩存中獲取數據。

自動識別

這種指紋攻擊技術使用了JavaScript來衡量網頁加載時的長期處理器緩存訪問延遲,然後利用深度學習技術,將這些數據與攻擊者事先收集的數據比較,從而自動識別出相似的模式,判斷出對於某個網站的訪問。

換句話說,可能通過測量瀏覽器在獲取和渲染網頁時對處理器CPU緩存的訪問情況,來獲知用戶是否瀏覽某個網站。某個標簽頁內的惡意JavaScript腳本可以監視緩存訪問,來確定緩存的訪問模式和指紋,從而判斷其他標簽頁訪問過的網站。

“‘傳統’的機器學習技術要求人類去尋找數據的哪些‘特徵’可能與攻擊有關。”Oren和Yarom解釋道。“但在哪些特徵最適合進行哪些類型的攻擊方面也有很多研究。在深度學習中,電腦扮演專家的角色,試圖自己找到這些特徵。這樣我們就能直接從數據獲得結果。人類研究者可能比我們的機器學習算法找到更好的特徵,這些資訊用於改進該攻擊。”

專家們考慮了兩個場景:一個是封閉世界的數據集,包含100個網站,每個網站采取了100個數據點;另一個是開放世界的數據集,能夠從5000個網站中分辨出100個敏感的網頁。

在封閉數據集上使用利用主流瀏覽器,研究者能準確地分類出70~90%的網站訪問記錄。使用Tor之後,攻擊的準確率降到了47%,但如果同時考慮其他數據,準確率能提高到大約72%。開放世界的數據集也顯示出類似的結果,即70~90%,對於Tor,如果不僅考慮最佳輸出,而是檢查前五位的結果的話,準確度能達到83%。

如果目標僅僅是確定某個訪問過的網站是否敏感,那麽開放世界數據集的準確度能提高到99%以上。

Oren和Yarom說,他們的工作顯示通過限制對精確計時的訪問很難防禦他們的旁路攻擊。

“我們的工作演示了整個過程是不重要的——我們完全不需要高精度的計時器進行攻擊。”他們說,“類似地,一些用於防禦Spectre的措施會將網站隔離到多個進程中。我們證明了這些措施是不夠的。我們發現,可以從一個標簽頁偵測其他標簽頁,甚至可以從一個瀏覽器偵測同一台電腦上運行的其他瀏覽器。”

他們在最後總結道,在任何時間點,運行少於一個瀏覽器標簽頁都會有潛在的隱私風險。打開第二個標簽頁時,其中的JavaScript就能嗅探到第一個標簽頁中的內容。完全禁用JavaScript能阻止這種攻擊,但同時也禁止了許多依賴JavaScript的網站。而且他們說,可視化應該只是遍歷特性,而不是安全特性。

“如果你要同時訪問敏感的網站和非敏感網站,那就用兩台電腦。”他們說。

原文:https://www.theregister.co.uk/2018/11/21/unmasking_browsers_side_channels/

本文為 CSDN 翻譯,如需轉載,請注明來源出處。

熱 文推 薦

獲得更多的PTT最新消息
按讚加入粉絲團