你有想過使用 iPhone、Mac 瀏覽網站將可能導致 Google 帳號、瀏覽紀錄等私人資料外洩嗎?
於去年底,蘋果於 iOS 15 、iPadOS 15 與 MacOS 12 推出了新版 Safari,採用全新介面設計,並搭載網址列左右滑動、標籤頁群組等新功能,使用上變地更加方便;但近期,國外資安團隊卻發現,新版的 Safari 有嚴重的安全漏洞,駭客利用該 BUG,成功竊取民眾於 Safari 上的瀏覽記錄,甚至連 Google 帳號、密碼都可能被偷走!
Safari 資訊外流、安全漏洞危機
根據網路詐騙偵測解決方案開發商《FingerprintJS》部落格分享的消息,新版 Safari 有著相當嚴重的安全漏洞,駭客可利用 IndexedDB API 中的錯誤,進行各種網站瀏覽、帳密登錄的歷史追蹤。
▉ 什麼是 IndexedDB API?
根據《FingerprintJS》的說明,IndexedDB 是種用戶端存儲的 API,可大量保存數據,且常用各種瀏覽器中,屬於低階的 API。
▉ Safari 安全漏洞問題出在哪?
《FingerprintJS》解釋,造成新版 Safari 資料洩密的主因在於:蘋果違反了 IndexedDB API 的同源原則*。
正常來說,即使用戶從 Google 轉跳至 Facebook, Facebook 並不會存取到 Google 帳號資訊;但是新版 Safari 訪問某網站時,會在某網站開了一個 IndexedDB , 再把該 IndexedDB 空白副本用於其它網站;即使名字為空白,但實際的數據卻是相同的,導致隱私外洩的危險。
*補充:什麼是同源原則?
為一種基本的安全機制,只有「同源」的資源才可相互存取,跨來源的資源則會受到限制,只有滿足特定情況,才允許存取。
▉ 網友 Demo 網站實際體驗 Safari 安全漏洞
為了讓大家更清楚 Safari 安全漏洞的問題,《FingerprintJS》網站中也提供名為「Safari 15 IndexedDB Leaks」的 Demo 網站,讓大家進一步了解該問題;至於該如何使用該網站,可依照以下步驟操作:
- 步驟一、點擊進入「Demo 網站」,選擇「Start demo」。
- 步驟二、點擊下方「 Try it.」。
- 步驟三、選擇下方任一個有使用 indexedDB API 的網站進行測試。
▼ 點擊下方任意一個網站,此處瓦特先點擊 alibaba 做為測試
- 步驟四、先暫時不要關閉測試網站,請直接返回 Demo 網站,可看到 Demo 網站上顯上出你剛剛拜訪的網站名稱;另外點擊下方,還可偵測正在使用的 Google 帳號資訊。
▼Demo 偵測到我目前正在瀏覽 alibaba 網站
▼ 完整教學影片
▉ 「私密瀏覽」可防止 Safari 資料外洩嗎?
根據《FingerprintJS》的說明:即使用戶改用 Safari 私密瀏覽,IndexedDB API 漏洞仍是有效的,依舊可追蹤到用戶的網頁瀏覽紀錄。
結論、如何預防 Safari 資料外洩?
目前《FingerprintJS》已將錯誤回報給蘋果官方,根據 1 月 17 日的更新資訊,蘋果工程師表示已修正這些錯誤;不過修正更新檔仍尚未發布,該 Bug 依舊存在。
如果你是 iPhone 或 Mac 的用戶,建議可以透過以下兩種方法來防止 Safari 資料外洩。
- 方法一、先不要更新到 iOS 15、iPadOS 15 或 macOS 12
目前該漏洞只發生在新版的 Safari ,舊版的 Safari 不受影響;如果你尚未更新至 iOS 15、iPadOS 15 或 macOS 12,建議可以等到修正檔釋出後,再進行更新。 - 方法二、改用其他瀏覽器
如果你已更新,建議暫時先不要使用 Safari,可以先改用其他瀏覽器,例如:Chrome、FirFox 等等;這些瀏覽器並沒有出現新版 Safari 的洩漏資料問題。
首圖來源:flickr
資料來源:FingerprintJS