我有一个由 crypto-LUKS 加密的磁盘,但忘记了密码。我读了一个贴在这里的问题。LUKS硬盘加密破解
但在此之前,我想知道是否有一些免费软件可以用来以更有效的方式解密密码?
这是一个关于如何使用开膛手约翰解密 LUKS 密码的教程。
但是我们可以使用GPU来进行计算吗?在这种情况下会更快吗?
一些建议?
感谢您的评论!
我有一个由 crypto-LUKS 加密的磁盘,但忘记了密码。我读了一个贴在这里的问题。LUKS硬盘加密破解
但在此之前,我想知道是否有一些免费软件可以用来以更有效的方式解密密码?
这是一个关于如何使用开膛手约翰解密 LUKS 密码的教程。
但是我们可以使用GPU来进行计算吗?在这种情况下会更快吗?
一些建议?
感谢您的评论!
这取决于您拥有哪种加密/格式。目前,cryptsetup 支持多种格式。基本上,最受欢迎的是LUKS1和LUKS2。您可以使用以下命令检查您的格式:
cryptsetup luksDump <device>
John the Ripper 仅支持使用 LUKS1 和加密/哈希模式的特定组合进行 CPU 破解。如果是LUKS1,有在GPU支持Hashcat,你可以利用GPU开裂优势。还实施了智能优化,它不执行 LUKS 执行的第二个 PBKDF2,但它需要具有加密数据的第一个扇区(“有效负载”)。
Hashcat 和开膛手 John 都显示 GPU (R9 290x) 比 CPU (i7 2.2 Ghz) 更快的常见 LUKS1 格式 (luks1 type with aes, cbc-essiv:sha256, sha1) 的简单基准测试:
$ hashcat64.bin -a 0 -m 14600 sample-luks example0.dict
[..]
Speed.#1.........: 882 H/s (2.29ms) @ Accel:2 Loops:64 Thr:64 Vec:1
$ john --test=30 --format=luks
Benchmarking: LUKS [PBKDF2-SHA1 256/256 AVX2 8x]... DONE
Raw: 54.8 c/s real, 56.2 c/s virtual
John the Ripper 的速度为 54.8 c/s,而 Hashcat 的速度为 882 c/s,大约快了 16 倍。当然,可以选择每台机器拥有多个 GPU,因此这个数字可能会更大。因此,Hashcat 是目前破解 LUKS1 格式的最佳选择(因为它支持的加密/哈希组合和破解速度)。
目前还没有GPU支持LUKS2格式破解。这并不意味着它不可能,但它是新格式,可能还没有实现。如果您有简短的密码列表,则可以利用 cryptsetup 本身:
cat wordlist.txt | xargs -t -P `nproc` -i echo {} | cryptsetup --verbose --test-passphrase open sdb3-to-crack sdb3_crypt
如果您需要更强大的东西,这意味着您仅限于已经提到的工具(按以下顺序):
如果你想了解更多关于破解每种格式的过程,我建议阅读我最近写的文章破解 LUKS/dm-crypt 密码。我还编写了修改后的 cryptsetup。修改后的 cryptsetup 的优点是它支持通常的 cryptsetup 支持的一切。还有一些破解工具提到LUKS2的静态二进制文件,如果你想用它玩。
有人开发了一个程序,它应该能够通过使用 GPU 来破解 LUKS 密码,但我现在不记得它的名字了。我会试着把它挖出来。
此外,还有一些程序/脚本可以破解 LUKS 密码(bruteforce-luks和Grond),它们都可以利用多个线程(CPU 内核),这使得它们比 John the Ripper 的示例快得多。我已经能够使用 Grond 成功恢复少数 LUKS 密码,速度范围为每秒 1.8-5 个密码(取决于 CPU)。
如果你知道大部分密码,并且有一个不错的 CPU,那应该不会太难。