如果各位不想上網留下 Cookies 或記錄的話,會選擇用無痕視窗,但如果你的電腦配有 nVidia 顯示卡就小心了。一個軟件工程師在啟動電腦遊戲 Diablo 3 時 ,居然顯示了他在數小時前瀏覽過的色情網站的畫面,即使他是用 Chrome 的無痕視窗,畫面依然一覽無遺。
![incognito-mode](https://cdn.unwire.pro/wp-content/uploads/2016/01/incognito-mode-590x332.jpg)
他在網誌講述事發經過。當他開啟 Diablo 3 時,其載入畫面變成了他在數小時前用 Chrome 無痕視窗瀏覽色情網站 YouPorn 的畫面。他甚至可以把畫面截圖。縱使是數小時的事,其內容依然可以保存良好。
![nvidia-bug-1](https://cdn.unwire.pro/wp-content/uploads/2016/01/nvidia-bug-1-590x332.png)
nVidia 驅動器錯誤引致
他解釋這是 nVidia GPU 驅動器的錯誤。GPU 記憶體在分配給程式時沒有清除,使一個程式的內容可轉移至另一個。當 Chrome 無痕視窗關閉時,其幀緩衝區(Framebuffer)加到 GPU 的記憶池(Memory Pool),但沒有消除。當 Diablo 要求幀緩衝區時,裝置把之前 Chrome 用過的給它,由於先前的內容未被消除,其幀緩衝區還有舊的內容。最後 Diablo 執行時沒有清除緩衝區資料,結果 YouPorn 的畫面便再次呈現眼前。
他亦編寫了一個程式來擷取 GPU 記憶體的像素,成功把之前瀏覽過的 Reddit 網站畫面儲存,但並非每次成功,有時畫面會重新排列。
![nvidia-bug-2](https://cdn.unwire.pro/wp-content/uploads/2016/01/nvidia-bug-2-590x343.png)
![nvidia-bug-3](https://cdn.unwire.pro/wp-content/uploads/2016/01/nvidia-bug-3-590x353.png)
他認為這是一個嚴重的問題,因為這使人人都可以監視用家的活動,而且發生時可以純粹是意外。他又指出只要推出為 GPU 驅動器推出修補程式,確保緩衝區在分派給應用程式時先清除資料便可。
Source : Motherboard