使用 Hashcat 进行哈希破解
概述
哈希破解(Hash Cracking)是渗透测试人员和安全审计员评估密码强度的重要技能。Hashcat 是全球最快的密码恢复工具,支持 GPU 加速下的超过 300 种哈希类型。本技能涵盖在授权许可下使用 Hashcat 进行密码审计、理解攻击模式、创建有效规则集以及生成哈希分析报告。本技能严格用于授权的渗透测试(Penetration Testing)和密码策略评估。
目标
- 从捕获的哈希中识别哈希类型
- 执行字典、暴力破解和基于规则的攻击
- 为针对性破解创建自定义 Hashcat 规则
- 从破解结果分析密码强度
- 生成密码策略有效性的合规报告
- 对 GPU 哈希破解性能进行基准测试
核心概念
Hashcat 攻击模式
| 模式 | 标志 | 描述 | 使用场景 |
|---|---|---|---|
| 字典 | -a 0 | 词表攻击 | 已知密码模式 |
| 组合 | -a 1 | 组合两个词表 | 复合密码 |
| 暴力破解 | -a 3 | 基于掩码的枚举 | 短密码 |
| 基于规则 | -a 0 -r | 字典 + 变换规则 | 复杂变体 |
| 混合 | -a 6/7 | 词表 + 掩码 | 附加数字的密码 |
常见哈希类型
| 哈希模式 | 类型 | 使用示例 |
|---|---|---|
| 0 | MD5 | 遗留 Web 应用 |
| 100 | SHA-1 | 遗留系统 |
| 1000 | NTLM | Windows 凭据 |
| 1800 | sha512crypt | Linux /etc/shadow |
| 3200 | bcrypt | 现代 Web 应用 |
| 13100 | Kerberos TGS-REP | Active Directory |
安全注意事项
- 只能在明确书面授权下执行哈希破解
- 在传输和静止状态下保护所有捕获的哈希数据
- 立即向资产所有者报告所有已破解的密码
- 使用结果改进密码策略,而非利用用户
- 参与结束后销毁已破解的密码数据
- 遵循渗透测试范围的交战规则
验证标准
- 哈希类型识别正确
- 字典攻击破解弱密码
- 基于规则的攻击破解符合策略的密码
- 掩码攻击破解短密码
- 结果报告显示密码强度分布
- 所有操作在授权范围内执行