鉴于“Collection #1”的发布,将我的电子邮件地址提供给 haveibeenpwned 之类的服务是否安全?

信息安全 密码 违反 我被打倒了
2021-08-15 02:25:14

新闻中有一个新的登录/密码数据被盗的大案子同时,我读到有一些服务可以让您检查您自己的登录数据是否受到影响,例如 Have I Been Pwned

在那里输入我的电子邮件地址以确定我是否需要更改密码是否安全?

4个回答

Troy Hunt 在他的博客、Twitter 和 haveibeenpwned.com 的常见问题解答中多次解释了这个问题

这里

当您搜索电子邮件地址时

搜索电子邮件地址只会从存储中检索地址,然后在响应中返回它,搜索到的地址永远不会显式存储在任何地方。有关可能隐式存储的情况,请参阅下面的日志记录部分。

标记为敏感的数据泄露不会在公共搜索中返回,只能通过使用通知服务并首先验证电子邮件地址的所有权来查看。域所有者也可以搜索敏感的违规行为,他们证明他们使用域搜索功能控制了域。了解为什么非敏感违规可以公开搜索。

另请参阅日志记录段落

常见问题解答

我怎么知道该网站不只是在收集搜索到的电子邮件地址?

你不知道,但事实并非如此。该网站的目的只是为人们提供一项免费服务,以评估与他们的帐户被泄露有关的风险。与任何网站一样,如果您担心意图或安全性,请不要使用它。

当然,我们必须相信 Troy Hunt 的主张,因为在处理您的具体请求时,我们无法证明他没有做其他事情。
但我认为,可以公平地说,haveibeenpwned 是一项有价值的服务,而 Troy Hunt 本人是信息安全社区中受人尊敬的成员。

但是让我们假设我们不信任特洛伊:你会失去什么?您可能会向他透露您的电子邮件地址。当您可以输入任何您想要的电子邮件地址时,这对您来说有多大风险?

归根结底,HIBP 对您来说是一项免费服务(!),但要花 Troy Hunt 的钱。如果您不想冒很多人对 Troy Hunt 的误解的风险,您可以选择自己搜索世界上所有的密码数据库,因为这样您就会泄露您的电子邮件地址

Troy Hunt 是一位非常受人尊敬的信息安全专家,全球数百万人正在使用这项服务,甚至一些密码管理员也使用这项服务来验证用户选择的密码是否涉及数据泄露。

例如,参见https://1password.com/haveibeenpwned/

根据该网站,1Password 与流行的网站 Have I Been Pwned 集成,以密切关注您的登录,以发现任何潜在的安全漏洞或漏洞。

在本网站输入您的电子邮件地址将告诉您哪些数据泄露涉及该电子邮件地址,以便您可以返回受影响的网站并更改您的密码。这是特别的。如果您在多个网站上使用了相同的密码,这一点很重要,从一个站点窃取的凭据可用于攻击其他站点,这种技术也称为凭据填充攻击。

以下 StackExchange 帖子有 Troy 本人的回应,进一步澄清了这项服务: “我被 Pwned 的”Pwned 密码列表真的有用吗?

您没有明确询问此问题,但这与您的问题非常相关(并在评论中提到),所以我想我会提出来。特别是,一些更多的细节可以为评估这样的东西提供一些线索。

论据

haveibeenpwned 还有一项服务,可以让您查看给定的密码是否以前被泄露过。我可以看到这项服务更加“有问题”。毕竟,谁愿意四处将密码塞进一个随机网站?你甚至可以想象与怀疑者的对话:

  • Self:如果我在这里输入密码,它会告诉我它是否曾出现在黑客攻击中!这将帮助我知道它是否安全!
  • 怀疑论者:是的,但你必须给他们你的密码
  • Self:也许吧,但即使我不信任他们,如果他们也不知道我的电子邮件,那也没什么大不了的,他们也不会要求我提供电子邮件地址
  • 怀疑论者:除了他们也有一个表格要求你提供电子邮件。他们可能使用 cookie 来关联您的两个请求并将您的电子邮件密码放在一起。如果他们真的很鬼鬼祟祟,他们会使用非 cookie 的跟踪方法,因此更难判断他们是否在这样做!
  • 自我:等等! 它在这里说他们不会发送我的密码,只是发送我密码哈希的前几个字符。他们绝对无法从中获取我的密码!
  • 怀疑论者仅仅因为他们说这并不意味着它是真的。他们可能确实会发送您的密码,将其与您的电子邮件相关联(因为您可能会在同一会话中检查您的电子邮件),然后破解您的所有帐户。

独立验证

当然,我们无法验证向他们发送数据后会发生什么。您的电子邮件地址肯定会被发送过来,并且没有承诺他们不会秘密地将其变成一个巨大的电子邮件列表,用于下一波尼日利亚王子电子邮件。

但是密码呢,或者两个请求可能连接的事实呢?使用现代浏览器,很容易验证您的密码实际上并未发送到他们的服务器。 此服务旨在仅发送密码哈希的前 5 个字符。然后,该服务返回以该前缀开头的所有已知密码的哈希值。然后,客户端只需将完整的哈希值与返回的哈希值进行比较,以查看是否匹配。密码甚至密码的哈希都没有发送。

您可以通过进入密码搜索页面、打开开发者工具并查看网络选项卡(chromefirefox)来验证这一点。输入密码(如果您仍然担心,请输入密码)并点击提交。如果您这样做,password您将看到一个命中的 HTTP 请求https://api.pwnedpasswords.com/range/5BAA65BAA6是 的散列的前 5 个字符password)。没有附加 cookie,实际提交的密码永远不会出现在请求中。它以约 500 个条目的列表进行响应,包括1E4C9B93F3F0682250B6CF8331B7EE68FD8(目前)列表3645804匹配项 - 也就是密码password在单独的密码泄漏中出现了大约 350 万次。(的 SHA1 哈希password5BAA61E4C9B93F3F0682250B6CF8331B7EE68FD8)。

仅凭这些信息,服务就无法知道您的密码是什么,或者即使它出现在他们的数据库中。在前 5 位数字之后可能会出现几乎无限种散列,因此他们甚至无法猜测您的密码是否在他们的数据库中。

同样,我们无法确定数据离开我们的浏览器后会发生什么,但他们确实付出了很多努力来确保您可以检查您的密码是否已泄露,而无需实际向他们发送您的密码。

总而言之,Troy 绝对是社区中受人尊敬的成员,我们可以验证这方面的一些方面。当然,从未有过社区中受信任的成员后来破坏这种信任的情况:) 我肯定会使用这些服务,尽管我不知道你是否想信任互联网上的某个随机人。再说一次,如果你不愿意信任互联网上的某个随机的人,那你为什么会在这里?

这里的许多答案都谈到了特定的服务“我被控制了”。我同意他们的观点,这项服务值得信赖。我想说一些普遍适用于所有这些服务的观点。

  1. 不要使用要求电子邮件和密码进行检查的服务。
  2. 使用允许您匿名检查而无需登录的服务。

这些服务检查已经发生的数据泄露。如果您的电子邮件地址遭到破坏,这些服务和许多其他人已经知道了。搜索您的电子邮件不会触发任何新内容。

在这种情况下,您获得的最大损失是您的电子邮件地址被披露。但这适用于任何网站或时事通讯。