在苹果官网上,Safari浏览器一直以强大的隐私保护功能作为卖点。其中,智能防跟踪和隐私标签等功能满足用户需求。但在近日,浏览器指纹识别服务商FingerprintJS发布了一篇博客,经他们调查发现,Safari 15在实现IndexedDB API时存在一个漏洞,该API允许任何网站跟踪用户的浏览记录,甚至泄露用户Google帐户的部分身份信息。
在揭露该漏洞之前,我们先来了解一下IndexedDB API是什么。
何为IndexedDB API?
IndexedDB(索引数据库)是一个用在浏览器客户端存储的API(应用程序编程接口),可以保存大量用户数据,目前被普遍使用在所有主要的浏览器上。由于IndexedDB是一个低级别的API,许多开发者选择使用包装器将大部分技术问题抽象化,并提供一个更易于使用、对开发人员更友好的API。
像大多数现代网络浏览器技术一样,IndexedDB遵循同源政策。这是一种基本的安全机制,它限制了从一个源头加载的文档或脚本与其他源头的资源交互。来源由方案(协议)、主机名(域)和用于访问它的URL端口定义。被索引的数据库与特定的源相关联,本质上,只有生成数据的网站才能访问它。例如,如果在一个标签页中打开电子邮件帐户,然后在另一个标签页中打开恶意网页,