首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LastPass密钥派生安全问题

LastPass密钥派生安全问题
EN

Security用户
提问于 2015-10-21 19:04:55
回答 1查看 510关注 0票数 4

我对密码管理器做了一些研究,当然偶然发现了LastPass。关于LastPass的安全性有很多问题和答案,但据我所知,没有人直接谈论这个具体的实现。当我读到这篇文章时,我感到很惊讶。

LastPass选择使用SHA-256,这是一种更慢的哈希算法,可以提供更多的保护,防止暴力攻击。LastPass利用使用SHA-256实现的PBKDF2函数将主密码转换为加密密钥。LastPass执行x轮函数来创建加密密钥,然后再执行一轮额外的PBKDF2来创建登录哈希。

根据他们的网站,这就是它的工作方式(如果理解正确的话)。

  1. 在主密码上使用PBKDF2,用户名为salt
  2. 至少迭代5000次(如果配置为更高的话)
  3. 主键是迭代的结果。
  4. 执行另一轮PBKDF2,并将其发送到服务器进行身份验证。
  5. 服务器使用不同的盐类进行额外的100.000轮PBKDF2 &自安全漏洞以来参数未知的scrypt。
  6. 存储和/或在/或与数据库进行比较(在这里或5以下使用HSM )。
  7. 用保险库向客户发送回复(加密)
  8. 客户端使用主密钥解密

虽然理论上一切都是安全的,但我们知道LastPass过去也有过安全漏洞。主密钥在发送到LastPast之前只会再散列一次。假设攻击者有可能访问LastPass基础设施并读取步骤5之前收到的值,这会严重危及主密钥吗?

我认为有可能,但是我们不能对密钥进行字典攻击,所以PBKDF2上的经典攻击向量不适用。除非我们有非常强的自定义硬件,这样我们就可以对主密码进行字典攻击,尽管有5000发。但另一方面,离主钥匙只有一圈的距离,似乎有点太近了,太不舒服了。

在这种情况下,主钥匙是否有任何实际的威胁?

EN

回答 1

Security用户

回答已采纳

发布于 2015-10-21 19:27:01

首先,请记住99.99%的站点通过明文(当然是通过SSL连接)向服务器发送密码。在那里,服务器实际上有您在身份验证期间的明文密码。因此,即使是一个哈希,也增加了安全性。

退一步说,我们执行多次哈希或密码密钥派生的原因是,我们从一组相对较小的可能输入(即,由我们这些愚蠢的用户选择的密码)。由于设置的大小很小,您需要增加字典或蛮力攻击的计算费用,方法是使每个散列的计算成本更高。我们通过一遍又一遍地重复哈希来实现这一点。

在您询问的Lastpass情况下,哈希的输入是另一个哈希的输出。因此,输入空间在整个256位之间分布得比较好。至少在你将密码加盐之后(没有salt,这很容易受到预计算攻击的攻击)。这意味着蛮力攻击必须测试完整的256位空间才能逆转一个哈希。这对于预计算攻击来说太大了(例如:使用彩虹桌)。

现在,如果开发了一个允许您逆转SHA-256的攻击,就会增加这种情况下的风险,以及许多其他的风险。

票数 5
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/103359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档