IT资讯 卡巴斯基密码管理器生成的密码极易被破解

bennett · 2021-07-10 08:00:06 · 热度: 87

安全咨询公司 Donjon 发现,在 2019 年 3 月至 2020 年 10 月期间,卡巴斯基密码管理器(Kaspersky Password Manager,KPM)生成的密码可以在几秒钟内被破解。原因在于该 工具 使用的伪随机数生成器(PRNG)非常不适合加密用途。

卡巴斯基密码管理器生成的密码极易被破解

Donjon 研究人员称,卡巴斯基密码管理器中包含的密码生成器存在有几个问题。其中最重要的是,PRNG 仅使用单一的熵源——当前时间。这意味着,它创建的每个密码都可已在几秒内被暴力破解。例如,在 2010 年和 2021 年之间有 315619200 秒,所以 KPM 对于一个给定的字符集最多可以生成 315619200 个密码;而攻破它们需要几分钟的时间。

网站或论坛显示一般都会显示账户的创建时间。在知道了账户的创建日期后,攻击者就可以尝试用小范围的密码(约 100 个)来暴力破解账户密码,并获得访问权。此外,如果使用卡巴斯基密码管理器生成的密码,也可以很容易地从泄漏的数据库中检索到包含散列密码、加密档案的密码、TrueCrypt/Veracrypt 卷等。

该问题被标记为 CVE-2020-27020,其中旧版本的密码管理器被描述为"不完全具有密码学强度,在某些情况下可能允许攻击者预测生成的密码"。虽然"攻击者需要知道一些额外的信息(例如,密码生成的时间)"的警告是有效的,但事实是,卡巴斯基密码的安全性明显低于人们的期待。

Donjon 的研究人员得出结论称:

卡巴斯基密码管理器使用了一种复杂的方法来生成其密码。这种方法的目的是创建标准密码破解器难以破解的密码。然而,这种方法降低了生成的密码对专用工具的强度。我们以 KeePass 为例,展示了如何生成安全的密码:只要你在给定的字符范围内偷看一个字母时,摆脱了"modulo bias",那么像随机抽签这样的简单方法就很安全。

我们还研究了卡巴斯基的 PRNG,结果发现它非常弱。它的内部结构是一个来自 Boost 库的 Mersenne twister,并不适合生成加密材料。但主要的缺陷是,这个 PRNG 是以当前时间为种子的,单位是秒。这意味着由脆弱版本的 KPM 生成的每个密码都可以在几分钟内被破解(如果你知道大概的生成时间,也可以在一秒钟内破解)。

最后,我们提供了一个概念证明,详细说明了 KPM 使用的完整生成方法。它可以用来验证卡巴斯基密码管理器<9.0.2 Patch F 的 Windows 版本中确实存在这个缺陷。顺便说一下,编写这个 PoC 使我们在计算密码字符出现频率时发现了一个越界读取,这使得密码的强度比它们应该有的要强一些。

目前该产品已更新,其最新版本不受此问题的影响。

更多详情可查看:https://donjon.ledger.com/kaspersky-password-manager/

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册