微软正在对 Edge 进行一项更改,以确保浏览器在启动时不再以明文形式将保存的密码加载到进程内存中。此前,该公司曾声称这种行为是“设计使然”。
5月4日,安全研究员 Tom Joran Sonstebyseter Ronning 披露了该问题。他演示了所有保存在 Edge 内置密码管理器中的凭据,都会在浏览器启动时被解密,并且即使未被使用,也会一直保留在内存中。
Ronning 还发布了一个“概念验证”工具,该工具允许拥有管理员权限的攻击者从其他用户的 Edge 进程中提取密码(如果没有管理员权限,该 PoC 工具只能访问由同一用户运行的 Edge 进程)。
他还透露,自己曾就此问题通知了微软,但在他公开披露该信息之前,微软回复称这种行为是“设计使然”。
该研究员表示:“在我测试过的所有基于 Chromium 的浏览器中,Edge 是唯一一个有这种行为的浏览器。相比之下,Chrome 使用的架构极大地增加了通过简单读取进程内存来提取已保存密码的难度。”
尽管微软最初拒绝修复该问题,但本周该公司宣布,未来的 Edge 版本将不再在启动时将保存的密码加载到内存中,尽管上述攻击场景符合现有的威胁模型(该模型通常不考虑攻击者已经获得设备管理员控制权的情况)。
微软 Edge 安全负责人 Gareth Evans 表示:
“作为纵深防御战略的一部分,此项更改将出现在所有受支持的 Edge 版本中(包括稳定版、Beta 版、Dev 版、Canary 版,以及企业客户使用的 Extended Stable 长期稳定版),我们已经将其发布列为优先事项。
作为我们‘安全未来计划’的一部分,并考虑到客户的反馈,我们开始以更广阔的视角来看待此类问题。这意味着,我们不仅会评估一个问题是否符合安全漏洞的标准,还会审视可以通过哪些纵深防御机制来进一步降低风险。在这种情况下,减少内存中密码的存在,就是朝这个方向迈出的切实一步。”
该修复目前已登陆 Edge Canary 频道,并将随下一次更新进入所有受支持的 Edge 版本(148 版本及更新版本)。
去年,微软还推出了一项新的 Edge 安全功能,以保护用户免受通过绕过官方应用商店加载到浏览器的恶意扩展程序的侵害;此外,在黑客开始利用 Chakra JavaScript 引擎中的零日漏洞来获取用户设备访问权限后,微软也限制了 Edge 中 Internet Explorer 模式的访问权限。