該錯誤可能會將您的搜索歷史記錄和 Google 用戶 ID 暴露給第三方網站,這是蘋果尚未解決的主要隱私問題。
指紋識別和欺詐檢測服務 FingerprintJS 最近發現並描述了 Safari 15 中的一個錯誤,該錯誤可以跟踪瀏覽活動,甚至向網站洩露您的身份。每個使用最新版本 macOS、iOS 和 iPadOS 的人以及 Safari 瀏覽器用戶都面臨數據洩露的風險。
關於錯誤
Safari 15 的 bug 源自 Apple 的 JavaScript API 實現(稱為 IndexedDB)。然而,這種實現違反了 IndexedDB 的同源策略,這是一種主要的安全機制,限制一個來源的文檔和腳本與另一個來源的資源進行交互。這會導致錯誤允許一個網站訪問另一個網站的數據庫,而在正常情況下,這種情況不應該出現。通常,每個索引數據庫都有一個單獨的來源,並且一個來源的文檔和腳本永遠不能訪問不同來源的數據庫。
每次網站與數據庫交互時,都會在同一瀏覽器會話中的所有其他活動框架、選項卡和窗口中創建一個具有相同名稱的新(空)數據庫。
因此,該漏洞明顯侵犯了隱私,為各種交叉跟踪做法和濫用行為敞開了大門。例如,隨機網站(包括惡意網站)可以看到在網站上創建的數據庫的名稱,其中包含特定於某人身份的詳細信息。此外,Google 用戶 ID 允許 Google 訪問用戶信息,例如個人資料圖片或姓名,而該 Safari 錯誤現在已使其他網站可以訪問這些信息。
最糟糕的是——這些洩漏不需要用戶採取任何額外的操作。在後台運行的選項卡或窗口可以實時查看用戶訪問的其他網站,因為該錯誤不斷查詢 IndexedDB API 來搜索可用數據庫。更重要的是,一個網站可以在彈出窗口中打開另一個網站並觸發其中的洩漏。
使用 FingerprintJS 的演示檢查洩漏
FingerprintJS 創建了一個演示它使用瀏覽器的 IndexedDB 漏洞來識別受感染的網站(您當前正在使用或最近使用過的網站)。該演示還展示瞭如果您在瀏覽時登錄 Google 帳戶,您的 Google 用戶 ID 中的信息將如何被竊取。您可以在 Safari 以及所有 iOS 和 iPadOS Web 瀏覽器上嘗試該演示。
到目前為止,FingerprintJS 已測試了 1000 多個網站,並確定了 30 多個受該漏洞影響的網站,其中包括全球流行的 Instagram、Twitter、Netflix 和 Xbox。然而,研究人員懷疑這個數字在現實生活中要高得多,因為如果有特定用戶操作的支持,網站可以與子頁面上的數據庫進行交互。
Mac、iOS 和 Safari 用戶如何保護自己?
不幸的是,這個問題尚未得到解決,目前蘋果客戶無法採取太多措施來保護自己免受利用該漏洞的網站的侵害。您可以嘗試的一項嚴厲措施是默認阻止所有 JavaScript,並且只允許在受信任的網站上使用它。但是,這可能會擾亂您的瀏覽體驗,並且不能保證您不會通過受信任的網站成為目標。
如果您是 Mac 用戶,您可以切換到更安全的瀏覽器直到漏洞得到修復。不幸的是,iOS 和 iPadOS 用戶沒有此選項,因為 Apple 已禁止在 iOS 上使用第三方瀏覽器引擎,這使得所有 iOS 用戶更容易出現此錯誤。因此,我們所能做的就是等待蘋果解決這個問題後更新我們的操作系統。我們只能希望這很快就會發生,因為用戶的隱私和公司的聲譽都是,再次,危在旦夕。
