AliExpress 用你瀏覽器的音訊悄悄認出你這台機器
有個開發者在 GitHub 上發了一篇分析。他打開 AliExpress 的網頁,用瀏覽器的開發者工具看程式碼。發現有一段跑了很久的 JavaScript,在做一件很奇怪的事。
那段程式碼在動用瀏覽器的音訊系統。
問題是頁面根本沒有在播任何聲音。沒有影片、沒有音樂、沒有背景配樂。什麼都沒有。但那段程式在跑 AudioContext——瀏覽器裡專門處理聲音的那套 API。
第一波留言的人反應差不多是:「阿里在監聽我。」
那個開發者說:不是。它不是在錄音、不是在聽你講話、不是在偷你麥克風的收音。
它在算一組數字。
原理是這樣的。
網站丟一段人耳聽不到的訊號進瀏覽器的音訊系統,讓瀏覽器把它處理一遍。輸出結果每一台裝置都不太一樣——因為 CPU 型號、聲卡驅動、作業系統版本、瀏覽器版本之間都有極小的差異。
這些差異加起來,變成一組跟你這台機器高度綁定的獨特數字。
專業名詞叫 audio fingerprinting。裝置的音訊指紋。
它可以在你完全沒有登入、沒有輸入任何個資的情況下,認出「這是同一台機器」。
WaCow 實在是有夠聰明。
它可以在你清掉 cookie 之後,還是認出你。
它可以在你打開無痕模式之後,還是認出你。
它可以在你換一個帳號登入之後,還是認出你。
因為指紋綁的是硬體本身,不是那些你以為清掉就沒了的東西。
Firefox 在 2023 年 9 月的 118 版加了對這種音訊指紋的防護。Brave 更早。Safari 大概同一時期跟上。
Chrome 到現在還沒有。
Chrome 佔了全球瀏覽器市場的 65%。所以就算 Firefox 全套防護做到滿分,全球有 65% 的人打開 AliExpress,那段程式碼還是照樣跑、指紋照樣被抓走。
阿里巴巴的官方回應:這是為了「防止機器人流量」跟「詐騙偵測」。
這句話技術上不是謊言。裝置指紋確實常常被拿來做這兩件事——區分真人跟自動化程式、標記可疑帳號跨裝置的異常行為。
但它同時也能拿來做行銷追蹤。做跨網站的行為關聯。做競品分析(同一台裝置在別家電商看過什麼)。做「同一個消費者多次註冊拿新客優惠」的偵測。
用同一組指紋,可以做的事情很多。而使用者永遠不會知道具體哪些被拿去做了什麼——因為它不會出現在同意頁面上、不會出現在隱私政策裡的具體條目、不會出現在你的裝置設定裡的任何選項下。
它就在那裡,一直在跑。
這件事真正棘手的地方,不是它在做的事情本身。
而是因為它安靜。
竊聽這件事情大家都懂——它有畫面、有聲音、有「我在被聽」的直覺恐懼。所以大家會警覺、會反抗、會提告、會逼平台修正。
但你完全感覺不到的追蹤,你沒辦法反抗。你在無痕模式裡輕鬆瀏覽的當下、你以為刻意清了 cookie 就重新來過的當下、你以為換帳號就等於換一個人的當下——那組 audio fingerprint 從頭到尾沒動過。它認得你。它從第一次到最後一次都認得你。
而你不知道。
那個 GitHub 開發者的貼文底下,最後有一則留言。他問:「所以我現在該做什麼?」
上面回:「你什麼都做不了。你這台機器的指紋已經在他們的資料庫裡了。」