KeePass密码管理器的用户可能希望在接下来的几周里格外警惕。新发现的漏洞允许以明文形式检索主密码,即使在数据库锁定或程序关闭时也是如此。虽然解决方案正在酝酿之中,但最快也要到6月初才能到位。
(2023年6月5日更新:修补此漏洞的KeePass版本2.54现已发布。)
正如《哔哩哔哩》报道的那样,一位名为vdohney的安全研究人员发布了一个概念验证工具,该工具实际演示了该漏洞的利用。攻击者可以执行内存转储来收集大部分明文形式的主密码,即使在KeePass数据库关闭、程序锁定或程序不再打开的情况下也是如此。当从内存中取出时,密码的前一两个字符将丢失,但随后可以猜测出整个字符串。
对于那些不熟悉内存转储漏洞的人来说,你可以把这种情况想象成有点像KeePass的主密码在裤子口袋里找零钱。抖动裤子,你几乎得到了购买进入数据库所需的全部美元(可以说)–但这些硬币从一开始就不应该在口袋里四处漂浮。
概念验证工具在Windows中演示了这个问题,但Linux和MacOS也被认为是易受攻击的,因为该问题存在于KeePass中,而不是操作系统中。Windows中的标准用户帐户也不安全-转储内存不需要管理权限。要执行攻击,恶意攻击者需要远程访问计算机(通过恶意软件获得)或物理访问。
所有现有版本的KeePass 2.x(例如,2.53.1)都会受到影响。与此同时,根据vdohney的说法,与KeePass数据库文件兼容的其他密码管理器KeePass 1.x(仍在维护的旧版本程序)、KeePassXC和Strongbox不受影响。
此漏洞的修补程序将在KeePass版本2.54中提供,该版本可能会在6月初发布。KeePass的开发者Dominick Reichl在SourceForge论坛上给出了这一估计,并警告说,不能保证时间框架。具有安全缓解功能的KeePass的不稳定测试版本现已推出。嗡嗡作响的计算机报告说,概念验证利用工具的创建者无法在修复到位后重现该问题。
然而,即使在升级到KeePass的固定版本后,主密码仍可能在程序的内存文件中可见。为了完全防止这种情况,你必须使用覆盖现有数据的模式完全清除你的电脑,然后重新安装操作系统。
然而,这是一个相当激烈的举动。更合理的是,不要让不受信任的人访问你的计算机,不要点击任何未知的链接或安装任何未知的软件。一个好的防病毒程序(就像我们最推荐的程序之一)也会有所帮助。当修复版本的KeePass启动时,你还可以在升级后更改你的主密码-如果之前的密码仍然隐藏在你的内存文件中,这样做应该会使它变得无关紧要。
你还可以通过重新启动电脑,清除休眠和交换文件,并在KeePassXC等安全的替代方案中暂时访问KeePass数据库来减少风险。设备加密还可以帮助抵御对您的PC的物理攻击(或者如果您认为有人可以在您捐赠或丢弃PC后挖掘这些信息)。有一些方法可以保持保护-幸运的是,这似乎只是一个概念验证问题,而不是一个积极的利用。
编者按:本文最初发布于2023年5月19日,并于2023年6月5日更新,其中包含一个指向修补此漏洞的KeePass版本2.54的链接。
有话要说...