![复制](https://linux22.com/image/1224213/%E5%A4%8D%E5%88%B6.png)
我最近决定将我的所有密码存储在 KeyPass Password Safe 2 中。我忘记了 KeyPass 的密码。
有没有什么办法可以找回它?我的假设是没有,原因很明显。
答案1
如果您忘记了这个主密码,数据库中的所有其他密码也会丢失。没有任何后门或可以打开所有数据库的密钥。没有办法恢复您的密码。
答案2
如果你因为刚刚更改了主密码而忘记了它,那么你将来可以按照我的做法去做:
- 使用旧密码制作备份。确保其中包含新密码。
- 更改真实副本以使用您的新密码
- 保留使用旧密码的密码,直到您非常熟悉新密码,甚至无需考虑它。之后,将其删除。
还没有误导我。
答案3
如果密码正确构建(而且据说正确),您恢复密码的机会非常有限 - 运气、对自己和行为的了解,您可能能够缩小密钥空间并对其进行暴力破解。有一些工具可以暴力破解 Keepass 文件 - 请参阅这里也就是说,重置所有密码可能更容易、更快捷。
答案4
我快速在网上搜索了“brute force keepass”。
这是第三个结果,也是我点击的第一个结果。
https://rubydevices.com.au/blog/how-to-hack-keepass
为了冗余,我将简单地将其复制如下。
当有足够的链接起作用时,尽情享受吧。我省略了一些,并更新了一个损坏的链接。
我还没有测试过这些,但至少这个想法非常清晰和合理:
天无绝人之路。
复制
如何使用 Hashcat 破解 KeePass 密码 2017 年 5 月 2 日
今天我们来谈谈密码。我们都听说过 2012 年臭名昭著的 LinkedIn 密码泄露事件吗?超过 1.17 亿个加密密码被泄露并被出售。
如此大量的数据转储成为研究安全背景下人类行为的宝库。美国公司 Preempt 透露,转储中高达 35% 的密码在泄露前就已经可以在密码字典中找到。这样的统计数据提醒我们要尽可能地使用强密码。
今天,我们将对 KeePass 数据库文件进行简单攻击,并尝试破解主密码。对于不熟悉该软件的人来说,KeePass 是一款流行的开源密码管理器。假设您需要记住 50 个用于不同目的的不同密码,您如何记住它们?有些人会把它们写在一本书里。其他人可能会将它们存储在纯文本文件中 - 绝对不推荐!第三种方法是使用 KeePass 之类的软件应用程序。它的作用是使用 AES 结合主密码和可选的密钥文件加密提供给该工具的所有密码。当用户希望回忆起任何特定密码时,他们会将他们的主密码提供给该工具;作为响应,该工具将以纯文本形式解密所有密码,允许用户检查他们感兴趣的条目。
软件系统为了验证主密码的有效性,会将散列算法应用于与其他数据连接在一起的字符串。所有涉足密码破解领域的人都知道,只要有散列可用,就可以发起暴力破解或字典攻击。
那么我们该怎么做呢?第一步是从 KeePass 数据库文件中提取哈希值。这是一个 KeePass 数据库我们创建了一个非常简单的密码,我们将在本教程中使用该密码。
这里不需要重新发明轮子。一个名为“keepass2john”可从 John the Ripper github 存储库获取。让我们进入 Linux 系统并按如下方式安装它。
[user]~$ git clone https://github.com/piyushcse29/john-the-ripper.git
[user]~$ cd john-the-ripper/src
[user]~$ make
[user]~$ make clean generic
[user]~$ cd ../run
接下来,将 KeePass 数据库文件复制到当前目录并在其上运行“keepass2john”二进制文件。
[user]~$ ./keepass2john CrackThis.kdb > CrackThis.hash
[user]~$ cat CrackThis.hash
CrackThis:$keepass$*1*6000*0*dfb86938fedd22b8235c4de4b02e5bb3*c292fa502cbb0e912f30c1e1b6829a2c04ebe30477cb269d462fbbbeeb9360a6*b85fb0e07f3edbd4123db2c829b79355*6d4857a728900d4da4fad66999233e5c647e5354330d31be3a47bbdd102a5ca7*0*CrackThis
现在,我们已准备好破解提取的哈希文件。下一步是下载密码破解实用程序。目前最好的是从这里可以获取 Hashcat。Hashcat 之所以能成为此类工具的领导者,是因为它拥有大量预定义的哈希算法,并且能够利用计算机 GPU 大幅提高破解速度。
从 Hashcat 3.0 版开始,该软件支持 KeePass,无需定义自定义算法。我们可以运行快速 grep 命令来了解调用二进制文件所需的开关值 13400。
[user]~$ ./hashcat --help | grep -i "KeePass"
13400 | KeePass 1 (AES/Twofish) and KeePass 2 (AES) | Password Managers
接下来,我们需要编辑哈希文件。hashcat 二进制文件并不期望 KeePass 数据库的名称添加到哈希前面,因此我们必须使用文本编辑器修剪字符串;这样做之后,我们的哈希文件将如下所示。
[user]~$ cat CrackThis.hash
$keepass$*1*6000*0*dfb86938fedd22b8235c4de4b02e5bb3*c292fa502cbb0e912f30c1e1b6829a2c04ebe30477cb269d462fbbbeeb9360a6*b85fb0e07f3edbd4123db2c829b79355*6d4857a728900d4da4fad66999233e5c647e5354330d31be3a47bbdd102a5ca7*0*CrackThis
现在我们可以发起攻击了。我们使用了一个我们随意挑选的密码字典,称为“cracklib-words”可从此处获取(已更新)。
[user]~$ # -m 13400 => KeePass Hash Provided
[user]~$ # -a 0 => Dictionary Attack
[user]~$ # -w 1 => Low Latency Desktop Profile
[user]~$
[user]~$ ./hashcat -m 13400 -a 0 -w 1 CrackThis.hash cracklib-words
我们的机器在 12 分钟内破解了主密码,结果如下。
Session..........: hashcat
Status...........: Cracked
Hash.Type........: KeePass 1 (AES/Twofish) and KeePass 2 (AES)
Hash.Target......: $keepass$*1*6000*124*dfb86938fedd22b8235c4de4b02e5b...
Time.Started.....: Mon May 1 20:53:17 2017 (12 mins, 8 secs)
Time.Estimated...: Mon May 1 21:05:25 2017 (0 secs)
Guess.Base.......: File (cracklib-words)
Guess.Queue......: 1/1 (100.00%)
Speed.Dev.#2.....: 1463 H/s (1.85ms)
Recovered........: 1/1 (100.00%) Digests, 1/1 (100.00%) Salts
Progress.........: 1064960/1671704 (63.71%)
Rejected.........: 0/1064960 (0.00%)
Restore.Point....: 1054720/1671704 (63.09%)
那么你可能会问密码是什么?抱歉,如果你想知道,你必须自己破解它 :) 感谢阅读。
总是,
Ruby 设备