我们都可以更好地保护我们的在线帐户和私人数据的安全。不幸的是,当我们使用的软件让我们容易受到重大威胁时,我们能做的就只有这么多了。例如,上周五,欺诈预防服务 FingerprintJS详细介绍了 Safari 15 中的一个漏洞,该漏洞能够泄露浏览活动和个人数据(通过9to5Mac)。此错误影响 macOS 上的 Safari,以及 iOS 和 iPadOS 上的每个浏览器。如果您拥有 Apple 设备,您将面临风险。
正如 FingerprintJS 解释的那样,该漏洞是 Apple 在 Safari 中实现 IndexedDB API 的结果。IndexedDB 在您浏览时存储数据,并且旨在遵循同源策略。该政策确保来自一个网站的数据和文档不会被另一个网站看到。
Safari 15 违反了同源策略。当您在 Safari 上访问的网站与数据库交互时,“将在同一浏览器会话中的所有其他活动框架、选项卡和窗口中创建一个具有相同名称的新(空)数据库。” Safari 创建的数据库名称现在正在跨源泄漏。您访问的网站可以看到已创建的其他数据库的名称。
这令人担忧,但情况会变得更糟。FingerprintJS 还指出,一些网站的数据库名称中有唯一标识符。使用您的 Google 帐户的网站(例如 YouTube、Google 日历或 Google Keep)会创建包含经过身份验证的 Google 用户 ID 的数据库。恶意网站不仅可以看到您的 ID,还可以使用它来链接多个帐户。
您可以做些什么来保护您的数据?
为了衡量漏洞的严重程度,FingerprintJS 检查了 Alexa 访问量最大的 1000 个网站的主页。其中超过 30 个网站“直接在其主页上与索引数据库进行交互,无需任何额外的用户交互或身份验证。” 实际上,这个数字可能要高得多,尤其是当用户开始访问其他页面或与网站交互时。
如果你不能完全理解这个错误是如何工作的,那么你很幸运。该公司制作了一个演示,将准确地向您展示数据是如何在您的浏览器中的来源之间泄漏的。支持的浏览器包括 macOS 上的 Safari 15 以及 iOS 15 或 iPadOS 15 上的几乎所有浏览器。Apple 要求其移动设备上的所有浏览器都使用 WebKit 引擎,这意味着它们都容易受到攻击。