萬萬沒想到,這年頭 GPU 還能洩露密碼了。
主流 6 家公司的産品都中招,從英偉達英特爾 AMD,到高通蘋果 ARM,手機電腦都沒跑。
并且不是在處理 AI、大數據任務的時候洩露,而是在處理圖形任務渲染網頁的時候。
新攻擊方法稱爲像素竊取(pixel stealing),由得克薩斯大學奧斯汀分校等研究團隊提出。
研究将出現在 2024 年的第 45 屆 IEEE 安全和隐私研讨會上,不過現在論文和代碼都已經開源了。
壓縮數據的鍋
研究人員開發的概念驗證攻擊稱爲GPU.zip。
方法是在惡意網站嵌入一個 iframe 标簽,獲取被嵌入網站的内容如用戶名、密碼的圖像和其他敏感數據。
通常來說,浏覽器的同源策略會阻止這個行爲。
但現代 GPU 幾乎都用到的一個數據壓縮方法卻不受此限制。
這種壓縮方法核顯獨顯都會用,主要目的是節省顯存帶寬并提高性能,不需要應用程序的參與,所以也不受應用程序規則的限制。
研究團隊把不同 GPU 的壓縮算法逆向工程出來後,就可以再把數據 " 解壓 "。
攻擊思路很精彩,測量應用濾鏡的渲染時間或緩存狀态變化。
如果目标像素是白色,濾鏡結果不可壓縮,渲染時間長;如果是黑色,則可壓縮,渲染時間短。
通過時間差異判斷目标像素的顔色,完成跨域獲取像素最後可逐個獲取所有像素,重構受害頁面的完整信息。
實驗中,在 AMD 的 Ryzen 7 4800U 上花 30 分鍾可以 97% 的精确度渲染目标像素。
Intel i7-8700 上需要 215 分鍾,精确度 98.3%。
準是很準,還不怕系統噪聲幹擾,不過好在攻擊需要的時間較長。
英偉達、高通:不歸我們管
要達成這個攻擊,還需要浏覽器滿足三個條件。
允許跨源 iframe 加載 cookies
允許在 iframe 上渲染 SVG 濾鏡
将渲染任務交給 GPU
主流浏覽器中滿足全部條件比較危險的有 Chrome 和 Edge,Safari 和 Firefox 免疫這種攻擊。
基于這點,英偉達和高通都表示沒有計劃做任何修補。
英偉達發言人表示," 已經評估了研究人員提供的調查結果,并确定根本原因不在我們的 GPU 中,而是在第三方軟件中。"
高通發言人表示," 這個問題不在我們的威脅模型中,因爲它更直接地影響浏覽器,并且如果有必要的話可以由浏覽器應用程序解決,因此目前沒有計劃進行任何更改。"
截至發稿時,英偉達、蘋果、AMD 和 ARM 還沒有提供正式評論。
谷歌 Chrome 方面也沒決定是否進行修補,隻是說正與研究團隊溝通和積極參與。
對于網站開發者來說,如果想避免這種攻擊,需要限制敏感頁面被跨源網站嵌入。
可以在 HTTP 響應頭中設置 X-Frame-Options 或 Content-Security-Policy 達成。
那麽作爲用戶,應該擔心遭受這種攻擊麽?
研究人員測試發現,大多數敏感網站都已拒絕被跨源網站嵌入,易受攻擊的大型網站發現有維基百科。
也有網友提出了更徹底的解決方法,反正 iframe 使用越來越少,要不取消掉算了?
論文地址:
https://www.hertzbleed.com/gpu.zip/
參考鏈接:
[ 1 ] https://arstechnica.com/security/2023/09/gpus-from-all-major-suppliers-are-vulnerable-to-new-pixel-stealing-attack/
[ 2 ] https://news.ycombinator.com/item?id=37663159