注意!电池电量也能泄露你的网页浏览习惯

下一篇文章

音乐版权公司 AMRA 签订首个授权协议,与 Apple Music 展开全球合作

来自欧洲的一个安全研究团队发表了一篇 论文 ,文中分析指出,可以使用 HTML 电量状态 API(HTML5 Battery Status API)根据移动设备的剩余电量追踪 Linux 上 Firefox 用户的网页浏览习惯。(新闻来源:《卫报》

他们在论文中公布的特殊方法今年 6 月已被 Firefox 修复,在此之前他们提交了一份 bug 报告,指出了 Firefox 在各个平台上的电量提供实现方式上的不一致。

这篇名叫《泄密的电量:关于 HTML5 电量状态 API 的隐私分析》的论文还从隐私角度表达了对一个 API 未经用户授权就能查看电量状态的担忧。

研究人员写道:

该 API 无需获得用户授权就能读取电量信息,任何网站或网站上的第三方脚本都可以使用该 API。电量信息被访问时,该 API 也不会要求浏览器提醒用户。于是,网站和第三方脚本读取电量信息就畅通无阻了——而用户对此毫不知情。

这个电量 API 原本是为了让网站在检测到用户需要省电时自动从高性能版切换到节能版。然而,研究人员发现 GNU/Linux 版 Firefox 对于该 API 的实现方法是有问题的,该 API 提供的一些“看似无害的信息”可以用作追踪标识符(一种“新的设备数字指纹矢量”)——进而网站就有可能追踪到多个进程的浏览行为,哪怕你开启了隐私浏览模式或者清除了 cookies。

Firefox 的这个特殊问题出在 Linux 追踪剩余电量百分比的精度上——读取“64 位双精度浮点格式的数值,乘以 0.01 得到电量”。之后被网站脚本就能通过电量状态 API 获取到这个双精度数值——得到了一个据说可以用来识别个体移动设备(如智能手机或笔记本)的粒状衡量值。

研究人员称,该问题仅存在于 GNU/Linux 上的 Firefox 浏览器,因为 Windows、Mac OS X 和 Android 上的 Firefox 提供的电量精确度相比之下要低得多。

他们指出:

我们在对电量状态 API 实现方式的探索研究中发现,GNU/Linux 上的 Firefox 浏览器提供给 Web 脚本的电量是以双精度的形式呈现的。比如说,我们研究中观察到的一个电量数值为 0.9301929625425652。我们发现,在 Windows、Mac OS X 和 Android 上,Firefox 提供的电量只有两位有效数字(如 0.32)。

在 Linux 上,Firefox 读取电量是通过一个名叫 UPower 的 Linux 工具来实现的——这个工具也是这种更加全面的电源管理数据的根本来源。

至于追踪脚本是如何利用电量信息的,他们这样写道:

出现在多个网站上的第三方脚本能够利用 Web 脚本拿到的电量信息,将用户在短时间间隔内的访问关联起来。为此,脚本需要用到电量、失电时间、以及充电时间这些数值。这些读数在每个网站上都会是一致的,因为更新间隔(以及次数)都是相同的。第三方脚本就能由此将这些并发访问关联起来。甚至,当用户离开了这些网站,短时间内访问了包含相同第三方脚本的另一个网站时,仍有可能根据这些读数找到当前访问与之前访问的那些网站的关联。

除了根据电量信息识别设备以外,研究人员还指出,电池容量也可以被用作追踪矢量——电量状态 API 可以用来“推断设备的当前电池容量(即充满电的状态下),如果读数精度高的话”。同样,他们指出该方法仅适用于 Linux 上的 UPower 以及 Firefox。

在探讨如何防御电量 API 相关的追踪攻击时,研究人员表示,该 API 的实现方式应当避免提供高精度数值——将电量四舍五入是尽可能减少诸如此类标识符曝光可能性的一种办法。

他们总结道:

对 Web 标准、API 以及它们的实现方法进行分析,研究网页能够获取哪些信息,我们会发现令人意想不到的 Web 隐私问题。新的 Web API 庞大、复杂,再加上它们与设备深层次的融合,使得要想防御这样的威胁非常困难。隐私研究人员和工程师可以通过分析这些标准及其实现方法对 Web 隐私和追踪造成的影响,解决这些 API 带来的风险问题。这样不仅能够给 API 设计者以及浏览器厂商提供切实可行的建议反馈,还有助于提高新技术的透明程度。

在这篇论文中,研究人员还谈到了浏览器数字指纹技术的相关研究——比如 Panopticlick 研究就演示了如何利用浏览器属性(如屏幕尺寸,字体列表和插件)识别用户;还有研究人员演示了如何利用时钟偏差、字体大小、网络协议特征、JavaScript 引擎性能或者 WebGL、Canvas 渲染能力等其它属性进行追踪。

上个月底 ,安全研究人员还演示了一种技术,它可以收集用户的按键数据——分析他们的打字风格——从而分析并揭露使用匿名浏览器 Tor 用户的身份。

题图来自:苹果

翻译:顾秋实

Battery Attributes Can Be Used To Track Web Users