3

我正在分析一段时间内破解的哈希量。我希望每 10 秒保存一次当前的破解状态。

'''

已回收........:132659/296112 (44.80%) 消化,0/1 (0.00%) 盐回收/时间...:CUR:3636,N/A,N/A AVG:141703,8502198 ,204052756 (Min,Hour,Day) 进度.......: 15287255040/768199139595 (1.99%)

'''

我希望每 10 秒左右保存这 3 行状态。是否可以在 hashcat 中执行此操作,或者我需要在 python 中创建一个单独的脚本?

4

2 回答 2

3

每 10 秒获取一次状态

您可以使用 启用打印状态,--status并且可以使用 将状态设置为每 X 秒打印一次--status-timer X您可以在hashcat 选项wiki 页面上查看这些命令行参数,或hashcat --help.

例子:hashcat -a 0 -m 0 example.hash example.dict --status --status-timer 10


保存所有状态

我假设您只想保存 hashcat 在运行时打印的所有内容。一个简单的方法就是将 stdout 中的所有内容复制到一个文件中。这是一个流行的 S/O 问题,所以我们将只使用这个答案

为了安全起见,让我们使用-awhich 附加到文件中,这样我们就不会意外覆盖以前的运行。我们需要做的就是| tee -a file.txt在我们的 hashcat 调用之后。


解决方案

试一试,它应该将所有状态(以及标准输出中的所有其他内容)保存到output.txt

hashcat -a A -m M hashes.txt dictionary.txt --status --status-timer 10 | tee -a output.txt

只需将 A、M、hashes.txt 和 dictionary.txt 替换为您正在使用的参数即可。

如果您需要帮助仅从该输出文件中获取“已恢复”行,或者如果这在您的计算机上不起作用(我在 OSX 上),请在评论中告诉我。

于 2020-04-13T22:56:51.127 回答
1

除了 Andrew Zick 的回答,请注意,对于机器可读状态,hashcat 对机器可读输出具有本机支持 - 请参阅该--machine-readable选项。这会产生制表符分隔的输出,如下所示:

STATUS  5       SPEED   111792  1000    EXEC_RUNTIME    0.007486        CURKU   1       PROGRESS        62      62     RECHASH  0       1       RECSALT 0       1       REJECTED        0       UTIL    -1
STATUS  5       SPEED   14247323        1000    EXEC_RUNTIME    0.038953        CURKU   36      PROGRESS        2232   2232     RECHASH 0       1       RECSALT 0       1       REJECTED        0       UTIL    -1
STATUS  5       SPEED   36929864        1000    EXEC_RUNTIME    1.661804        CURKU   1296    PROGRESS        80352  80352    RECHASH 0       1       RECSALT 0       1       REJECTED        0       UTIL    -1
STATUS  5       SPEED   66538858        1000    EXEC_RUNTIME    3.237319        CURKU   46656   PROGRESS        28926722892672  RECHASH 0       1       RECSALT 0       1       REJECTED        0       UTIL    -1
STATUS  5       SPEED   63562975        1000    EXEC_RUNTIME    3.480536        CURKU   1679616 PROGRESS        104136192       104136192       RECHASH 0       1       RECSALT 0       1       REJECTED        0       UTIL    -1

...这正是 Hashtopolis 等工具用来为 hashcat 输出提供前端的工具。

对于机器可读的输出,选项--outfile--outfile-format可用。有关以下选项的选项,请参见Format输出部分:hashcat --help--outfile-format

- [ Outfile Formats ] -

  # | Format
 ===+========
  1 | hash[:salt]
  2 | plain
  3 | hex_plain
  4 | crack_pos
  5 | timestamp absolute
  6 | timestamp relative
于 2020-04-13T23:55:55.163 回答