網站如何從你的瀏覽器配置構建獨特識別符——以及在不破壞你的瀏覽體驗的前提下擊敗基於指紋識別的追蹤的實用工具。
瀏覽器指紋識別是一種追蹤技術,通過收集和組合用戶瀏覽器和設備的大量屬性來識別用戶。與Cookies不同,指紋識別不在你的設備上存儲任何數據,且無法通過刪除瀏覽器歷史記錄來清除。指紋在每次你訪問運行指紋識別腳本的網站時實時組裝,方式是通過查詢數十個瀏覽器API來獲取數據點,包括你的螢幕分辨率和色彩深度、已安裝字體、瀏覽器版本和插件、操作系統、時區、語言設置、WebGL渲染數據、canvas渲染、CPU和記憶體配置以及電池狀態。
每個單獨的數據點可能並不唯一,但20至30個此類屬性的組合創建了一個對你特定設備和瀏覽器配置高度特定的指紋。EFF ↗的Panopticlick項目研究發現,超過83%的瀏覽器在其數百萬測試人口中擁有獨特的指紋。即使你清除所有Cookies、使用無痕模式、使用VPN更改IP地址,或在不同網絡之間切換,從你的瀏覽器配置組裝的指紋仍基本保持一致,允許追蹤服務在不同會話中重新識別你。
Canvas指紋識別是部署最廣泛的技術之一。它通過使用HTML5 Canvas API渲染一個隱藏的圖像或文本,並測量你特定的GPU、驅動程序和圖形設置產生的像素值中的細微差異來運作。即使是兩台擁有不同驅動程序版本或硬件修訂版的相同電腦,也會產生略有不同的canvas輸出,從而創建高度區分性的識別符。AudioContext指紋識別使用Web Audio API採用類似的方法,生成信號並測量你的音頻硬件和軟件棧產生的微小變化。
瀏覽器指紋識別被廣告網絡、分析公司和數據仲介用於在用戶不知情或未同意的情況下跨網站追蹤他們。最大的廣告平台——包括Google的DoubleClick、Meta的像素以及數十個較小的廣告網絡——在Cookies之外部署指紋識別,以在用戶採取措施限制基於Cookie的追蹤時維持身份連續性。隨著監管壓力和瀏覽器變化降低了傳統第三方Cookies的有效性 ↗,指紋識別已成為商業追蹤生態系統中更重要的組成部分。
指紋識別也被合法地用於欺詐偵測和安全目的。銀行和支付處理商使用它來識別回頭客戶,並標記突然從非常不同的瀏覽器指紋訪問的帳戶,這可能表明帳戶被接管。電子商務平台使用它來追蹤購物車會話並偵測自動抓取機器人。這種雙重用途性使指紋識別更難在不同時破壞合法安全功能的情況下完全消除——儘管私隱工具試圖在封鎖廣告追蹤的同時保留功能性安全用途之間取得平衡。
在香港,指紋識別對依賴匿名性的用戶尤為令人擔憂。通過不同網絡和瀏覽器與線人通訊的記者可能認為他們已採取步驟保持匿名,但指紋識別仍可能將他們的瀏覽會話聯繫在一起。使用VPN訪問新聞機構安全投遞箱的舉報人,如果其瀏覽器指紋在不同會話中保持一致,仍可能被識別。因此,了解指紋識別不僅僅是廣告私隱問題,在高風險情境中可能與人身安全相關。
Brave Browser為日常用戶提供最易於使用且最有效的指紋識別防禦。Brave的方法是在每個網站和每次會話中對通過指紋識別API暴露的數據——canvas、WebGL、AudioContext、字體——進行輕微隨機化。Brave不是完全封鎖這些API(這會破壞許多網站),而是在返回的值中引入少量隨機噪聲,使每次指紋識別會話略有不同。這防止追蹤器隨時間建立一致的指紋,即使任何單次指紋讀取在內部仍然一致,且不會觸發網站破壞錯誤。
在about:config中啟用`privacy.resistFingerprinting`設置的Firefox提供了不同的方法:它將許多指紋值標準化為固定默認值,試圖使Firefox用戶彼此更相似。啟用此設置後,Firefox報告固定的螢幕分辨率、禁用時區洩漏、欺騙用戶代理詳情,並限制canvas API訪問。這偶爾會導致網站相容性問題,但顯著降低你的Firefox指紋的唯一性。arkenfox user.js配置啟用此設置以及數十個其他私隱設置,適合希望全面加固Firefox的用戶。
Tor Browser通過使所有用戶向網站呈現相同的指紋——相同的瀏覽器版本、相同的窗口大小、相同的暴露API和相同的值——提供最強的指紋識別防禦。由於數百萬Tor用戶看起來相同,指紋識別無法區分Tor網絡中的個別用戶。然而,Tor要求所有窗口大小相同(這擊敗了分辨率指紋識別)以及封鎖某些瀏覽器功能,意味著它並不適合所有瀏覽。對於需要真正匿名的高敏感性任務,Tor Browser仍然是對抗指紋識別最強大的可用工具。
你可以使用幾個免費的在線工具測試你的瀏覽器當前指紋。EFF的Cover Your Tracks(coveryourtracks.eff.org)是最成熟的——它針對數百萬之前訪客的數據庫測試你的瀏覽器,並報告你的指紋是「唯一」還是屬於常見群組。它還測試特定的指紋識別技術,包括canvas指紋識別以及你的瀏覽器是否成功封鎖已知追蹤腳本。在啟用指紋識別保護前後運行此測試,可以清楚顯示你的暴露程度發生了多大變化。
BrowserLeaks.com提供了對你指紋各個組成部分更技術性的深入分析——WebGL渲染器、canvas哈希值、AudioContext指紋、WebRTC IP洩漏狀態、字體清單等等。這對於了解哪些數據點正在為你指紋的唯一性做出貢獻,以及識別哪些保護措施在起作用非常有價值。在啟用了Shields激進模式的Brave中與默認Chrome中分別運行BrowserLeaks,可以展示兩種配置之間暴露數據的顯著差異。
AmIUnique.org提供對你的指紋隨時間變化的歷史追蹤,顯示隨著你更新瀏覽器、添加擴充功能或更改硬件配置,指紋如何發生(或不發生)變化。了解你的指紋的穩定性非常重要:頻繁變化的指紋更難用於長期追蹤,而穩定的指紋則允許跨越多個月的追蹤。指紋測試的實際結論幾乎總是相同的:切換到Brave或加固的Firefox,最小化你的擴充功能數量,避免使你的指紋更具特異性而非更少特異性的高度不尋常配置。