当前位置:

首页 > 系统应用 > 理解 Hashcat 命令结构

理解 Hashcat 命令结构

本文目录

    引言 Hashcat 是一个强大且功能多样的密码恢复工具。要有效地使用它,你必须首先理解其命令行结构。一个 Hashcat 命令由几个关键组件组成,这些组件精确地告诉程序要破解什么以及如何破解。 在本次实验中,你要学习Hashcat命令的基本构成。我们会逐步构建出一个完整且能使用的命令,其中涵盖五个

    引言

    Hashcat 是一个强大且功能多样的密码恢复工具。要有效地使用它,你必须首先理解其命令行结构。一个 Hashcat 命令由几个关键组件组成,这些组件精确地告诉程序要破解什么以及如何破解。

    在本次实验中,你要学习Hashcat命令的基本构成。我们会逐步构建出一个完整且能使用的命令,其中涵盖五个基本组成部分:可执行文件、哈希类型、攻击模式、输入哈希文件以及输入字典文件。等完成这些步骤后,你就能够为基于字典的攻击构建出基本的Hashcat命令了。

    识别 Hashcat 命令的核心组件

    在此步骤中,我们将识别 Hashcat 命令的基本语法。理解此结构是使用该工具的第一步。

    一个典型的 Hashcat 命令遵循以下模式:

    hashcat [options] hashfile [wordlist/mask]

    让我们分解这些组件:

    • CODE_0: 这是可执行程序本身的名称。
    • CODE0: 这些是修改程序行为的标志。最重要的选项是用于哈希类型的 CODE1 和用于攻击模式的 CODE_2,我们将在接下来的步骤中介绍。
    • CODE_0: 这是包含你想要破解的哈希或哈希的文件路径。
    • CODE_0: 这是输入文件的路径,例如用于字典攻击的字典文件,或用于暴力破解攻击的掩码模式。

    首先,让我们查看内置的帮助菜单,以了解该工具。此命令列出了所有可用的选项和信息。

    在你的终端中执行以下命令:

    hashcat --help

    你将看到一个详细说明 Hashcat 所有功能的长输出。我们将在后续步骤中参考这些信息。

    ```plaintext
    hashcat (v6.2.6) starting in help mode

    Usage: hashcat [options]... hash|hashfile|hccapxfile [dictionary|mask|directory]...

    ...
    -a, --attack-mode | Num | 攻击模式,见下面的参考。
    -m, --hash-type | Num | 哈希类型,见下面的参考。
    ...
    ```

    现在我们已经理解了基本结构,可以开始构建我们的命令了。

    使用 -m 标志指定哈希类型

    在此步骤中,你将学习如何指定目标哈希类型。Hashcat 支持数百种不同的哈希算法,你必须告诉它你正在尝试破解哪一种。这是通过使用 CODE_0 标志后跟一个数字代码来完成的。

    我们的实验环境准备了一个名为 CODE0 的文件,其中包含一个 MD5 哈希。要查找 MD5 的正确代码,你可以搜索 CODE1 的输出。

    使用 CODE_0 命令过滤帮助文本中的“MD5”:

    hashcat --help | grep MD5

    输出将显示所有与 MD5 相关的哈希类型及其对应的代码。

          0 | MD5                                            | Raw Hash, Salted and/or Iterated
       10 | md5($pass.$salt)                                 | Raw Hash, Salted and/or Iterated
       20 | md5($salt.$pass)                                 | Raw Hash, Salted and/or Iterated
    ...

    如你所见,标准 MD5 哈希的代码是 CODE_0。现在我们可以将其添加到我们的命令中。命令目前看起来像这样:

    CODE_0

    在下一步中,我们将指定攻击模式。

    使用 -a 标志指定攻击模式

    在此步骤中,你将学习如何使用 CODE_0 标志设置攻击模式。攻击模式告诉 Hashcat 使用哪种方法来破解密码。

    Hashcat 提供了几种攻击模式,但最常见的是:

    • CODE_0: Straight (字典攻击) - 将哈希与单词列表进行比较。
    • CODE_0: Combination - 组合来自两个不同字典的单词。
    • CODE_0: Brute-force (掩码攻击) - 根据定义的模式(掩码)尝试所有可能的字符组合。

    对于本次实验,我们将执行 Straight(字典)攻击,因此我们将使用攻击模式 CODE_0。你可以在帮助菜单中找到所有攻击模式的列表。

    让我们再次使用 CODE_0 来查找“Attack-Modes”部分:

    hashcat --help | grep "Attack-Modes" -A 10

    CODE0 标志告诉 CODE1 显示匹配项之后的 10 行,为你提供完整列表。

    ```plaintext
    - [ Attack-Modes ] -

    ## | Mode
    ===+======
    0 | Straight
    1 | Combination
    3 | Brute-force
    6 | Hybrid dict + mask
    7 | Hybrid mask + dict
    ```

    我们现在已经确定了攻击模式。让我们将其添加到我们的命令中,命令现在变为:

    CODE_0

    接下来,我们将提供包含我们想要破解的哈希的文件。

    提供输入哈希文件

    在此步骤中,你将指定包含要破解的哈希的输入文件。此参数位于选项之后。

    本次实验的设置脚本已在你的当前目录(CODE0)中创建了一个名为 CODE1 的文件。此文件包含一个 MD5 哈希。

    让我们使用 CODE_0 命令查看此文件的内容:

    cat hashes.txt

    你应该会看到以下输出:

    5f4dcc3b5aa765d61d8327deb882cf99

    这就是我们将要破解的哈希。要将其添加到我们的命令中,只需将文件名放在选项之后。我们的命令现在看起来像这样:

    CODE_0

    最后一步是为我们的字典攻击提供单词列表。

    提供输入单词列表或掩码

    在最后一步中,你将提供字典攻击所需的最后一个组件:单词列表。单词列表是一个纯文本文件,其中每一行都是一个潜在的密码。

    实验环境包含一个名为 CODE_0 的简单单词列表。让我们检查一下它的内容:

    cat wordlist.txt

    输出将是:

    test
    hello
    password
    123456

    Hashcat 将使用此单词列表来测试哈希。单词列表文件是我们命令中的最后一个参数。

    现在,让我们组装并运行完整的命令:

    hashcat -m 0 -a 0 hashes.txt wordlist.txt

    Hashcat 将启动。由于我们的哈希和单词列表非常简单,它将几乎立即完成。输出将显示破解会话的状态。

    ...
    Session..........: hashcat
    Status...........: Cracked
    Hash.Name........: MD5
    Hash.Target......: 5f4dcc3b5aa765d61d8327deb882cf99
    Time.Started.....: ...
    Time.Estimated...: 0 secs (0.00ms)
    Guess.Base.......: File (wordlist.txt)
    Guess.Queue......: 1/1 (100.00%)
    Speed.#1.........:   496.9 kH/s (0.00ms) @ Accel:128 Loops:1 Thr:1 Vec:8
    Recovered........: 1/1 (100.00%) Digests
    Progress.........: 4/4 (100.00%)
    Rejected.........: 0/4 (0.00%)
    Restore.Point....: 4/4 (100.00%)
    Restore.Sub.#1...: Salt:0 Amplifier:0-1 Iteration:0-1
    Candidates.#1....: test -> 123456
    Hardware.Mon.#1..: Util: 99%
    ...

    CODE0 行确认成功。要查看破解的密码,你可以再次运行相同的命令并加上 CODE1 标志。

    hashcat -m 0 -a 0 hashes.txt wordlist.txt --show

    输出将清晰地显示哈希及其对应的明文密码:

    5f4dcc3b5aa765d61d8327deb882cf99:password

    恭喜你,你已成功构建并执行了一个完整的 Hashcat 命令!

    总结

    在本次实验中,你从零开始构建了一个 Hashcat 命令,学习了其基本命令结构。你已成功使用字典攻击破解了一个 MD5 哈希。

    你现在理解了 Hashcat 基本命令的五个核心组成部分:

    1. 可执行文件:CODE_0
    2. 哈希类型:通过 CODE0 指定(例如,MD5 为 CODE1)。
    3. 攻击模式:通过 CODE0 指定(例如,字典攻击为 CODE1)。
    4. 哈希文件:包含目标哈希的文件(例如,CODE_0)。
    5. 单词列表/掩码:攻击的输入(例如,CODE_0)。

    你学到的最终命令结构是:CODE_0。这些知识为你探索更高级的 Hashcat 功能奠定了坚实的基础。

    本文内容来源于网友投稿,如有侵权请联系删除。
    作者最新文章
    系统应用
    相关文章 更多
    win10升级新版本后取消开机密码失效怎么修复
    win10升级新版本后取消开机密码失效怎么修复

    Windows 10更新后开机突然要求输入密码?本文解析自动登录失效的真实原因,提供通过netplwiz重新保存凭据、关闭Windows Hello干扰及排查账户策略的完整步骤,助你恢复免密进入桌面。

    win10更新没下载完反复重试该怎么停止任务
    win10更新没下载完反复重试该怎么停止任务

    Windows 10更新下载失败反复重试怎么办?不要直接停用服务。本文教你通过设置页面暂停更新、启用按流量计费连接以及调整活动时间,安全地暂时停止下载任务并避免意外重启。

    win10怎么取消系统准备强制升级新版本
    win10怎么取消系统准备强制升级新版本

    面对Win10强制升级新版本的提示,本文解析家庭版与专业版的应对差异。介绍如何通过暂停更新、设置活动时间临时避让,以及利用组策略控制功能版本。强调Windows 10支持终止后的安全风险,避免使用高风险的禁用服务手段。

    win10组策略找不到更新选项该怎么处理
    win10组策略找不到更新选项该怎么处理

    Win10组策略编辑器中找不到Windows Update选项怎么办?本文分析家庭版与专业版的权限差异,厘清本地策略与域策略的区别,提供设置页替代方案及企业环境排查思路,避免盲目修改注册表或安装非官方补丁。

    win10取消开机密码会影响电脑里的文件安全吗?
    win10取消开机密码会影响电脑里的文件安全吗?

    很多人为了便捷选择取消 Win10 开机密码,这会导致文件丢失吗?本文详解取消密码后文件访问权限的变化、BitLocker 加密的有效性以及更安全的替代方案,帮助用户在便利与数据安全之间做出正确选择。

    win10弹出立即重启更新怎么延后这个操作
    win10弹出立即重启更新怎么延后这个操作

    Win10弹出立即重启更新会打断工作?本文介绍如何通过Windows Update页面安排重启时间、设置活动时段以及暂停后续更新,有效延后重启操作,保护未保存的工作成果。

    win10自动更新在夜间偷偷运行怎么限制
    win10自动更新在夜间偷偷运行怎么限制

    Win10晚上自动下载或重启怎么办?不要直接禁用服务。本文教你通过设置活动时间、安排指定重启时间及短期暂停更新,精准控制Windows Update行为,避免夜间网络占用和意外重启,同时保留系统安全性。

    win10本地账户取消开机密码有哪些简单方法
    win10本地账户取消开机密码有哪些简单方法

    想跳过Win10开机输入密码?本文详解本地账户清空密码、netplwiz自动登录及PIN设置的步骤与区别,同时提醒Microsoft账户和域策略下的限制与风险。

    win10更新重启倒计时怎么取消不让电脑重启
    win10更新重启倒计时怎么取消不让电脑重启

    面对Win10更新重启倒计时,如何通过设置界面取消或延后?本文详解活动时间、安排重启及暂停更新的位置与作用,帮助你在不影响工作的前提下管理系统重启。

    win10取消开机密码重启后还要输密码怎么办?
    win10取消开机密码重启后还要输密码怎么办?

    Win10设置取消密码后重启依然要求输入?这通常不是系统故障,而是自动登录配置错误或睡眠唤醒验证未关闭。本文教你区分本地账户与微软账户,正确设置netplwiz自动登录,并检查锁屏策略,彻底解决开机免密问题。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    macOS软件
    macOS软件

    正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

    Mac软件 更多
    photoshop
    photoshop
    Windows、macOS 、 iPad

    Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

    Blender
    Blender
    Windows、macOS 和 Linux

    Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。

    灵活计算器
    灵活计算器
    macOS/iOS/Android

    灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

    WINDOWS 更多
    3dmax(3ds max)
    3dmax(3ds max)
    Windows

    Autodesk 3ds Max 是一款专业的三维建模、动画与渲染软件,广泛应用于建筑可视化、游戏开发、影视动画、广告设计和产品展示等领域。

    photoshop
    photoshop
    Windows、macOS 、 iPad

    Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

    Blender
    Blender
    Windows、macOS 和 Linux

    Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。