多年来,许多网站利用各种巧妙手段,秘密追踪访客的浏览历史、设备指纹,甚至实时记录键盘和鼠标操作。近期,Meta和Yandex也被曝出参与了这种侵犯隐私的行为。

如今,网站又发现了一种新的监控方式:通过测量用户固态硬盘(SSD)的细微交互来监视访客。该技术被称为FROST(基于OPFS的SSD定时远程指纹识别),能够监控访客正在浏览的其他网站以及设备上运行的应用程序。

这项技术基于一篇研究论文,利用了一种侧信道攻击——通过物理现象(如电磁波泄漏、数据缓存或任务完成时间)产生的泄露信息。攻击者通过测量这些物理表现,可以解密加密流量并推断其他敏感数据。

FROST攻击利用的是竞争侧信道,通过测量多个进程对同一资源的竞争情况。研究人员通过测量SSD输入输出(I/O)操作的时间,成功识别出访客在其他浏览器标签页打开的网站以及设备上运行的应用程序。该攻击无需访客任何交互,只需打开含有攻击代码的网站即可。

论文作者指出:“现代浏览器已从简单的文档查看器演变为能够运行复杂应用的平台。谷歌、微软和Adobe等公司开发了完整的办公套件、照片和视频编辑器,甚至集成开发环境(IDE),全部运行于浏览器内。”他们进一步强调:“虽然这些功能提升了网页应用的能力,带来了全新的使用场景,但也扩大了浏览器的攻击面,部分功能已被证明引入了新的安全漏洞。”

与以往针对SSD的竞争侧信道攻击不同,FROST完全在浏览器内运行。它利用JavaScript与OPFS(原点私有文件系统)交互,OPFS是为特定网站分配的存储空间,用于完成特定任务。网站可以在不需用户交互的情况下创建该文件系统。

尽管每个文件系统都被沙箱隔离,JavaScript仍能测量I/O交互。随后,攻击者将这些交互数据输入预训练的卷积神经网络(CNN),该深度学习系统擅长分析文本、音频和图像,从而推断设备上打开的应用和网站。

研究人员解释:“攻击者通过对一个大型OPFS文件执行随机读取,持续测量SSD的竞争情况。用户活动引起的SSD竞争会导致读取操作的延迟变化。通过训练CNN模型分析这些延迟轨迹,攻击者可以识别主机系统上的用户活动。”

该技术存在一定限制。首先,OPFS文件必须非常大,通常需达到1GB或以上,这使得大规模攻击容易被用户察觉。此外,OPFS文件必须存储在访客使用的同一SSD上。对于追踪打开的网站来说,这通常不是问题,因为OPFS文件存储在浏览器默认位置。但如果应用程序使用了独立的SSD,则无法被FROST检测到。

防范FROST攻击的有效方法之一是及时关闭不再使用的标签页。高级用户还可以监控未知网站分配的OPFS文件的创建和大小。研究人员建议浏览器厂商通过限制OPFS文件最大尺寸等措施来关闭该侧信道。目前尚无证据表明FROST攻击已在现实中被利用。

研究团队在M2芯片的Mac上完成了完整的FROST攻击演示。在Linux系统上,他们验证了基础原理(通过JavaScript测量SSD访问延迟)有效,但未完成全部攻击流程。

合著者Hannes Weissteiner在邮件中表示:“由于该原理在macOS和Linux上的性能相似,我们预计完整分类的表现也会相似。理论上,可以针对任何可靠产生SSD访问的系统活动训练模型。”

研究未涉及Windows系统。

论文中包含更多技术细节,研究成果计划于7月的DIMVA会议上发布。

本文最初发表于Ars Technica。