hashcat · 高性能密码恢复平台 · GPU / CPU / 分布式口令破解工具部署与使用全指南
项目仓库: https://github.com/hashcat/hashcat
开源协议:MIT License · 多后端:CUDA / HIP / Metal / OpenCL · 支持平台:Linux / Windows / macOS(可从源码构建 BSD / Android) · 攻击模式:10 种 · 哈希模式:630+ 种
1 项目简介
hashcat 是一个高度优化的密码恢复平台,面向 GPU、CPU 与大型分布式系统。官方称其为“世界上最快的密码破解器”,并且是“世界上第一个且唯一一个内核内置规则引擎(in-kernel rule engine)”的工具,可在每种攻击模式中使用。它免费、开源(MIT 协议),支持跨 Linux / Windows / macOS 多操作系统,以及 CUDA、HIP、Metal、OpenCL 多种后端与多设备混合加速。
1.1 核心信息一览
| 项目项 | 内容 |
|---|---|
| 项目名称 | hashcat |
| 仓库地址 | github.com/hashcat/hashcat |
| 项目定位 | GPU / CPU 高性能密码恢复(口令破解)平台 |
| 开源协议 | MIT(见 docs/license.txt) |
| 后端 | CUDA、HIP、Metal、OpenCL |
| 攻击模式 | 10 种密码候选生成方式 |
| 哈希模式 | 630+ 种,每种均按性能优化编写 |
| 分发方式 | Release 二进制包(7z 解压);可选源码构建 |
| 默认端口 | 无网络服务(本地命令行工具) |
| 系统入口 | hashcat 命令 |
1.2 适用场景
- 安全合规审计:对企业自己的密码哈希库做强度审计,找出弱口令。
- 取证与授权渗透测试:在获得合法授权后,恢复用户遗忘或备份的密码哈希。
- 密码方案设计验证:用 benchmark 评估哈希算法的抗破解强度。
- 研究与教学:通过 hash recipes、PCFG、Markov 等模式研究口令空间。
1.3 能力边界(官方口径)
- hashcat 本身不提供哈希文件、字典或目标,只负责在你提供的哈希与字典上做计算。
- 官方明确建议:从源码构建是可选的——发布包与自编译版本是同一个程序,自编译不会让破解更快;只有在你需要自定义修改、修复 master 上未发布的修复、或官方未提供二进制的平台时才需要源码构建。
- 工具使用受法律与道德约束:仅限对你拥有或已获授权的哈希进行恢复。
2 功能特性
- 世界最快密码破解器:针对 GPU 大规模并行优化。
- 内核内置规则引擎:唯一在每种攻击模式中都可用的 in-kernel 规则引擎。
- 多 OS / 多后端 / 多设备:Linux、Windows、macOS;CUDA、HIP、Metal、OpenCL;多设备与混合设备类型在同一系统中工作。
- 多哈希批量:一次破解大量哈希。
- 630+ 哈希模式:每种均按性能优化编写。
- Hash recipes:把哈希写成表达式,如
pbkdf2_sha256(md5(pass), salt, iter, 32),全程 GPU 加速。 - 10 种攻击模式:含通用攻击、PCFG、table、association 等。
- Assimilation bridge:用 C、Python 或 Rust 添加哈希模式,无需手写 kernel。
- Brain 模式:跳过之前会话已经尝试过的候选。
- 分布式破解网络:使用 overlay 组成分布式 cracking 网络。
- 词表读取增强:从词表、stdin 或其他程序读取候选;支持 gzip / xz / zstd 压缩词表;可 seekable;Markov 链关键空间排序让高概率候选先出现。
- 会话管理:命名会话、中断后恢复;交互式暂停、恢复、回退、前进。
- 内置 benchmark 与热看门狗:自动按设备调优性能,内置 thermal watchdog。
3 官方界面预览
hashcat
是命令行工具,运行时在终端显示进度:目标哈希、当前模式、速度(H/s)、预计剩余时间、进度百分比与已恢复数量。启动后用
--help 查看完整参数,示例哈希见
docs/hashcat-example-hashes.md。
4 官方跳转链接汇总
| 类别 | 链接 | 说明 |
|---|---|---|
| 官方站点 | https://hashcat.net/hashcat/ | 下载最新 Release |
| 仓库主页 | https://github.com/hashcat/hashcat | 源码、Issues、CI |
| Wiki | https://hashcat.net/wiki/ | 详细文档 |
| FAQ | hashcat.net/wiki FAQ | 常见问题 |
| 论坛 | https://hashcat.net/forum/ | 多年问答存档 |
| Discord | discord.gg/HFS523HGBT | 实时帮助 |
| 依赖要求 | docs/hashcat-requirements.md | 驱动与运行时 |
| 包管理器 | docs/packages.md | 各发行版包 |
| 构建文档 | BUILD.md | 源码构建 |
| 帮助文档 | docs/hashcat-help.md | --help 全文 |
5 前置要求与服务器配置
5.1 软件前提
- 操作系统:Linux / Windows / macOS;源码构建可支持 BSD / Android。
- 显卡驱动与运行时:按
docs/hashcat-requirements.md安装对应后端(CUDA / HIP / Metal / OpenCL)所需的驱动与运行时;CPU 模式亦可运行但速度远低于 GPU。 - 解压工具:Release 包为 7z 压缩包,命令行解压使用
7z x以保留完整路径。
5.2 硬件建议
- GPU 加速是 hashcat 的核心价值:NVIDIA(CUDA)、AMD(HIP)、Apple(Metal)或任意 OpenCL 兼容设备均可;多设备可混合。
- 分布式破解可通过 overlay 网络把多台机器组成集群。
5.3 端口与资源
- hashcat 不监听网络端口;分布式模式按官方文档另行配置节点通信。
6 方式一:Release 二进制包(推荐)
官方推荐直接使用 Release 包,因为它与自编译版本功能完全一致:
# 1. 从 https://hashcat.net/hashcat/ 下载最新 Release(7z 包)
# 2. 解压(保留完整路径)
7z x hashcat-<version>.7z
cd hashcat-<version>
# 3. 运行自带 benchmark 验证环境
./hashcat -b各发行版若提供官方包,可按 docs/packages.md
直接安装。
7 方式二:源码构建(可选)
官方说明:仅在你需要自定义改动、master
上有未发布修复、或官方未提供二进制的平台时才需要源码构建。具体步骤见
BUILD.md:
git clone https://github.com/hashcat/hashcat.git
cd hashcat
git submodule update --init
make -j
# 构建完成后 ./hashcat 可用8 配置项说明
hashcat 通过命令行参数控制,无集中配置文件(官方文档为准):
| 配置项 | 用途 |
|---|---|
-b |
运行内置 benchmark,检测设备性能 |
-m <mode> |
指定哈希模式(630+ 种,见 example-hashes) |
-a <mode> |
指定攻击模式(0 直攻、1 组合、3 字典、6 混合等) |
-r <rule> |
加载规则文件 |
-w < workload> |
工作负载 / 性能等级 |
--session <name> |
命名会话,便于恢复 |
--restore |
从中断会话恢复 |
--brain |
启用 Brain 模式,跳过已尝试候选 |
-o <outfile> |
输出破解结果 |
9 常用运维命令
- 查看帮助:
./hashcat --help - 检测设备与性能:
./hashcat -b - 直攻模式(字典 +
规则)示例:
./hashcat -m 0 hash.txt rockyou.txt -r rules/best64.rule - 恢复中断会话:
./hashcat --restore - 列出可用哈希模式:
./hashcat --help | grep -i example - 查看某个模式的示例:见
docs/hashcat-example-hashes.md。
10 常见故障排查
- 找不到 OpenCL / CUDA 设备:按
docs/hashcat-requirements.md安装对应驱动与运行时;先跑hashcat -b验证。 - 速度低于预期:确认使用 GPU 后端而非纯 CPU;用
-b查看设备是否被识别;调整工作负载-w。 - 会话中断后想继续:使用
--session <name>命名会话,再用--restore恢复。 - 某哈希类型不支持:用 hash recipes
表达式自定义(
docs/hashcat-hash-recipe.md),或用 Assimilation bridge 开发插件(C / Python / Rust)。 - 词表压缩:直接传入 gzip / xz / zstd 压缩词表,无需解压。
- 求助渠道:先查 Wiki 与 FAQ,再到论坛 Discord 求助。
11 风险与合规说明
- 合法性:hashcat 是密码恢复工具,只能用于你拥有或已获明确书面授权的哈希(如自家系统审计、已授权取证、遗忘密码恢复);对他人系统未经授权的破解属于违法行为。
- 许可证:MIT 协议,可自由使用与再分发。
- 硬件风险:长时间满载运行 GPU 可能产生高温与耗电,官方内置 thermal watchdog 做保护,但仍建议监控散热。
- 本文整理自官方 README 与官方文档,命令与参数以官方仓库最新说明为准;不包含 star 数等动态数据。