使用leakedin.org 安全吗?

信息安全 密码
2021-08-20 01:19:01

leakedin.org 声称提供一项服务,检查您的 LinkedIn 密码是否被盗以及是否已被破解。

该网站声称它是纯 Javascript,即您的密码不会离开您的计算机,并表示您可以根据需要提供 SHA-1 密码。但是我不知道创建leakedin 的人,所以我不知道他们是非恶意的,并且有足够的能力不会让他们自己的网站被黑客入侵以引入恶意代码。

我主张先更改您的linkedin 密码(以及任何其他使用相同密码的网站),然后才使用linkedin.org,但使用该网站是否安全?

4个回答

取决于您所说的安全使用是什么意思。我测试时的服务不会记录您的明文密码,但可能会记录您的未加盐哈希。请注意,这很容易在以后更改,并且以后可以开始记录明文密码,除非您只在站点上输入哈希。 编辑:而不是使用这个网站,我推荐https://lastpass.com/linkedin/(基于这个答案),因为它使用来自已知实体的 https 并且可能更值得信赖。

如果您在源字段中输入明文密码,浏览器中的客户端 JavaScript 会将该密码转换为未加盐的 SHA-1 哈希,然后该 SHA-1 哈希通过网络发送到leakedin.org 以查看您的哈希是否在650万名单中。从您的浏览器发送到其服务器的实际 http GET 请求如下所示(在字段中输入“密码”后):

GET /?check=5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8 HTTP/1.1
Host: leakedin.org
Connection: keep-alive
User-Agent: [scrubbed]
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Referer: http://leakedin.org/?check=7ecfd8f97b4729c6ff0799b0b4d40f870083b461
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: first_pv_66595923=1; _jsuid=1189493102
Query String Parametersview URL encoded

无法记录来自明文密码的信息,因为 cookie 不会因不同的明文密码而发生显着变化,并且没有记录 AJAX 请求/XHR。(还有一个请求发送到,in.getclicky.com但它似乎是良性的网络分析——比如谷歌分析,似乎没有以纯文本形式记录您的密码或以某种方式对其进行编码)。

但是,您应该注意,一旦您尝试了此服务,即使linkedin 没有泄露您的未加盐哈希,您也只是将您的未加盐哈希泄露给了一个未知实体(并且该实体现在已将您的密码绑定到特定 IP 地址)-你最初担心的事情。如果您认为一个专门的黑客可以在数万亿次尝试中暴力破解您的哈希,您现在已经丢失并且需要停止使用您刚刚测试的密码。但是,如果您已经更改了密码并且现在只是好奇,您可以使用此服务进行检查。如果您厌倦了他们记录您的明文密码而不仅仅是哈希,您应该建议在您自己的计算机上计算哈希(例如,echo -n "password" | shasumecho -n "password" | openssl sha1在 linux/unix 中工作,或者如果您安装了 python,您应该能够执行类似的操作python -c "import hashlib;print hashlib.sha1('your_password').hexdigest())。

常识表明,除了要在其上使用密码的系统之外,您不应将密码提供给任何人。因此,您不应以任何形式向 LeakedIn 或任何其他第三方网站提供您的密码。你甚至可能违反 LinkedIn 的 TOS,这取决于它的编写方式。

如果常识不是足够好的理由,让我们戴上锡箔帽,想想你提供给 LeakedIn 的信息可以真正做什么。

首先,我将建立一些假设:

  1. 网站所有者可能是恶意的,或者网站/域可能在我们(最终用户)不知情的情况下受到恶意控制/监控。毕竟,连接是明文 HTTP,没有真正的识别和身份验证来证明到达最终用户的站点内容是由其声称的创建者创建的。不管 LeakedIn 现在如何运作,我们都不能假设它会继续像看起来那样(相对)良性运行。

  2. 入侵LinkedIn的人可能拥有比已发布的信息更多的信息。这很可能包括与密码哈希关联的用户名和/或电子邮件地址。它很可能包括一个已知与每个用户名一起使用的 IP 地址列表。这些信息也可能掌握在控制或监视 LeakedIn 的任何人手中。

  3. 大多数人只是要填写他们的明文密码并提交表单——Joe User 不太了解或不太关心 SHA1 哈希等,他只想知道他的密码是否已泄露。以下结果假设输入了实际密码。

以上所有内容几乎可以总结为:当 Joe User 使用 LeakedIn 时,他应该假定他至少向未知且潜在的恶意实体提供了他的 IP 地址、明文密码和 SHA1 密码哈希。

鉴于此,以及我们假设未知实体(以下称为攻击者)可能已经拥有的信息,可以做什么?

  1. 如果密码已经被破解,那么攻击者实际上没有任何好处。
  2. 如果密码还没有被破解,那你刚刚帮他破解了你的密码。不仅如此,您还为他有效地破解了使用相同密码(因为 LinkedIn 没有使用盐)的任何其他人的哈希值。
    • 至少,这有助于攻击者构建字典和彩虹表以用于未来的攻击。
    • 在最坏的情况下(假设攻击者拥有电子邮件地址和用户名,并且密码尚未更改),攻击者现在可以访问您在 LinkedIn 上的帐户以及您使用相同密码的任何其他网站。更糟糕的是,您还有效地为攻击者提供了相同的访问权限,以便任何其他可能在不知不觉中使用您拥有的相同密码的用户。

即使在最好的情况下,假设攻击者只有一个哈希列表并且站点是良性的并且只向攻击者发送 SHA1 哈希,您仍然将密码和 IP 地址的哈希提供给攻击者。最终结果仍然是攻击者现在比以前拥有更多关于您的信息,这是您通常应该避免的事情。这可以极大地促进未来对您和/或您的帐户的攻击,甚至可以促进对使用与您相同密码的其他人的攻击。

那么在某种程度上,有一个问题是你信任他们什么?因为它只是没有关联用户名的密码,如果没有进一步的工作来获取与密码相关联的用户名/电子邮件地址,它们可能很难被利用。

也就是说,显然去任何未知的网站并与之互动都可能存在风险(例如,有人使用Beef或类似网站)......

如果您确实想检查您的linkedin 密码的状态,我更倾向于在lastpass使用检查器。他们在要保护的安全领域享有盛誉,而且他们的页面使用 SSL,因此您的密码被泄露的风险更低。.

正如安全的主要负责人所说:be careful about whom you are required to trust. 我从来没有把我的密码(以纯文本形式)放在鼓励我这样做的地方。

leakedin.org 以纯文本形式询问我们的密码,并说明我们的密码是否已泄露。这意味着他们可以拥有泄露数据库的一部分。如果leakedin.org 的意图是邪恶的,那么他们可以将键入的密码存储在他们的数据库中,原因很明显:创建一个字典,这将有助于更快地破解未破解的密码。当然,我并不是说leakedin.org 使用了所描述的方法,而是从安全的角度来看:我们应该考虑我们的风险是什么,如果他们可以存储键入的密码。

其次,我不确定你为什么要检查它。好奇心害死猫。您应该在linkedin(以及使用相同密码的任何其他网站)上更改您的密码,然后忘记您的旧密码。