创建单词列表以加速 pdfcrack

创建单词列表以加速 pdfcrack

pdfcrack我之前分享过这里。现在很无聊,pdfcrack破解密码需要很长时间。

但是如果我可以使用一个单词表来帮助它,这可能会使整个处理器更快呢?但我该如何创建一个单词列表呢?例如,我知道前四个字符是字母,其余四个字符是数字。我将如何创建它以及如何将该堆栈/单词列表提供给pdfcrack.

答案1

生成单词列表的通用工具是crunch

例如,我知道前四个字符是字母,其余四个字符是数字。

以下命令将根据上面的描述生成一个单词列表:

crunch 8 8 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ -t @@@@%%%%

这个答案可能会帮助您了解@%以及此类工作的原理crunch。)

您可以通过将输出重定向到常规文件来将结果保存到常规文件中;然后使用带有-w以下选项的文件pdfcrack

crunch … >wordlist
pdfcrack -w wordlist protected.pdf

crunch告诉我该文件的大小约为 612 GB。如果我是你,我会将一种工具连接到另一种工具。不幸的是pdfcrack -w(至少在我的 Debian 中)没有遵循-标准输入的含义约定。我仍然可以这样做:

crunch … | pdfcrack -w /dev/stdin protected.pdf

如果您无法使用/dev/stdin,创建一个命名的 fifo 并使用它代替常规文件:

mkfifo myfifo
crunch … >myfifo &
pdfcrack -w myfifo protected.pdf

答案2

您实际上可能想使用除pdfcrack.有了好的GPU,hashcat每秒可以尝试更多数量级的密码(举个例子,每秒可以尝试数百万次,如果您有强大的 GPU,则速度会更快)。

您可以直接要求它破解具有特定字符模式的密码。为此,需要一个外部脚本(pdf2john.py)将 PDF 中的密码哈希提取为hashcat可以使用的格式。

例如,您可以使用如下命令:

hashcat -a 3 -i -m 10500 'hash' ?l?l?l?l?d?d?d?d

命令中,-a 3指定攻击模式为暴力破解,-m 10500是哈希类型(PDF),末尾的单词是模式,这里是4个字母和4个数字。指定-i攻击将从 1 个字符开始,然后是 2 个字符,...直到破解模式的长度。

答案3

以每秒 45k 的速度,计算 46 亿条数据大约需要 100,000 秒。所以28小时似乎是可行的。

我只需编写一个程序来从 0 计数到 9999,然后将其包裹在从 a 到 z 的四个循环中。所以你最终得到一个文件:

aaaa0001 to zzzz9999

相关内容