①
8 月 23 日凌晨,Brave 浏览器官方发了一组推文称,阿里旗下速卖通 AliExpress,在用静音音频偷偷追踪用户。

速卖通并不是录制大家说话的声音,而是在网页后台播放一段人听不到的静音音频。
不同电脑、手机的声卡、CPU 不一样,播放这段静音文件会产生微小差异,平台靠捕捉这些差异来生成专属设备指纹,不用 Cookie 也能跨网站跟踪用户的上网行为。
Brave 的来源是前几天一位程序员的发现。
②
8 月 20 日,开发者 laserphile 发现一个怪事:他打开速卖通网页后,蓝牙耳机就没法正常切换回手机听歌,页面静音也没用,关掉标签页才恢复。
一番排查后他找到原因:速卖通后台两段混淆过的风控脚本,悄悄启用了 WebAudio。脚本搭建了一条听不到声音的音频链路,增益设为零(人听不到,所以网页标签页上没有声音图标),但依然占用电脑的蓝牙音频通道,干扰多点耳机切换音源。
这套代码不只是无声音频采集,还会读取 canvas、WebGL、硬件信息、浏览行为等大量数据,组合起来生成设备指纹,用来区分真人买家和爬虫、机器人,防范刷单和欺诈。
laserphile 老哥用 uBlock Origin 添加过滤规则拦截 collina.js 和 fireyejs.js,就能解决问题。不过拦截风控脚本后,可能遇到更多验证码。
他认为,反欺诈可以理解,但购物主页在用户不知情的情况下后台采集指纹,还影响硬件正常使用,体验很差。
③
采集设备指纹做风控,算是电商圈很普遍的操作。Cookie 能随便删掉,指纹可以识别设备,用来抓爬虫、刷单、薅优惠、防账号被盗,可信设备还能少弹验证码,国内外不少平台都在用。
其中 WebAudio 音频指纹也有不少风控工具会用,但正常做法是用完就关掉音频上下文,不会占用系统音频通道。
速卖通这边属于实现出了问题,它脚本把音频链路一直挂在系统输出上,即便没声音,也抢了蓝牙通道,把多点蓝牙耳机搞出故障,所以上面那老哥吐槽体验很差。
PS:设备指纹核心就是反爬虫、反作弊、防欺诈,其次是用户行为追踪(广告投放)。
④ 网友热议
总之,速卖通这事在 X 和 HackerNews 上都引发了热议。

「真希望这类搞小动作的行为,能直接触发现在多数浏览器标签页上那个小喇叭图标。可现实并不会(至少我遇到的情况是这样)。我猜,网站搞播放无声音频这种操作实在太常见了,才逼得浏览器要做更复杂的处理:真正去解析音频流里面的实际内容……」

参考:X、laserphile,本文经由 AI 优化
news.ycombinator.com/item?id=49372583


登录后才可以发布评论哦
打开小程序可以发布评论哦