返回首页

Hashcat免费替代方案:本地搭建专业级密码破解审计平台全指南

密码破解是安全审计的重要环节。商业工具如Elcomsoft Password Recovery年费 $599,本身是免费开源的,但很多安全团队不知道如何发挥其最大威力。本文从选型到实战破解,手把手教你搭建专业级密码审计平台。

为什么Hashcat是最佳选择

工具 功能 GPU支持 规则引擎 价格
Hashcat 全格式破解 多GPU 强大规则 免费
John the Ripper 全格式破解 有限 有限 免费
Elcomsoft 商业破解 支持 有限 $599+
Passware 商业破解 支持 有限 $799+

Hashcat支持300+种哈希格式,支持多GPU并行,规则引擎和掩码攻击组合可以覆盖绝大多数密码策略测试需求。

硬件选型

GPU选择

GPU Hashcat速度(MD5) 功耗 价格 推荐度
RTX 4090 165 GH/s 450W $1,599 顶级
RTX 4080 100 GH/s 320W $899 推荐
RTX 3090 95 GH/s 350W $700(二手) 性价比
RTX 3080 75 GH/s 320W $500(二手) 性价比
RX 7900 XTX 80 GH/s 355W $799 AMD方案

建议:4x RTX 3090(二手)组合,总成本约 $2,800,MD5速度 380 GH/s。

服务器配置

# 操作系统
Ubuntu 22.04 LTS

# 驱动安装
 install -y -driver-535 nvidia-utils-535
# 或使用官方.run文件

# 验证GPU
nvidia-smi

# 安装 Toolkit
apt install -y nvidia-cuda-toolkit

Hashcat安装

# Ubuntu/Debian
apt install -y hashcat

# 或从源码编译(获取最新版)
git clone https://github.com/hashcat/hashcat.git
cd hashcat
make -j$(nproc)
make install

# 验证安装
hashcat -I  # 列出所有GPU设备
hashcat --  # 性能基准测试

实战破解指南

1. 基础哈希破解

# 创建哈希文件
echo "5f4dcc3b5aa765d61d8327deb882cf99" > hashes.txt  # MD5(password)

# 字典攻击
hashcat -m 0 -a 0 hashes.txt /usr/share/wordlists/rockyou.txt

# 带规则的字典攻击(推荐)
hashcat -m 0 -a 0 hashes.txt /usr/share/wordlists/rockyou.txt -r /usr/share/hashcat/rules/best64.rule

# 掩码攻击(8位小写字母+数字)
hashcat -m 0 -a 3 hashes.txt ?l?l?l?l?l?l?d?d

# 混合攻击(字典+掩码)
hashcat -m 0 -a 6 hashes.txt /usr/share/wordlists/rockyou.txt ?d?d?d?d

2. 常见哈希类型速查

# NTLM (密码)
hashcat -m 1000 -a 0 ntlm_hashes.txt rockyou.txt -r best64.rule

# NetNTLMv2 (网络捕获)
hashcat -m 5600 -a 0 netntlmv2.txt rockyou.txt

# Kerberos TGT (AS-REP Roasting)
hashcat -m 18200 -a 0 asrep.txt rockyou.txt

# Kerberos TGS (Kerberoasting)
hashcat -m 13100 -a 0 tgs.txt rockyou.txt

# bcrypt
hashcat -m 3200 -a 0 bcrypt.txt rockyou.txt

# SHA-512 密码
hashcat -m 1800 -a 0 shadow.txt rockyou.txt

# MySQL 5.x
hashcat -m 300 -a 0 mysql.txt rockyou.txt

# WordPress (phpass)
hashcat -m 400 -a 0 wp.txt rockyou.txt

# 7-Zip加密
hashcat -m 11600 -a 0 7z.txt rockyou.txt

# 
hashcat -m 22100 -a 0 bitlocker.txt rockyou.txt

# LUKS加密磁盘
hashcat -m 14600 -a 0 luks.txt rockyou.txt

# 私钥密码
hashcat -m 22911 -a 0 ssh.txt rockyou.txt

# PDF密码
hashcat -m 10700 -a 0 pdf.txt rockyou.txt

# 文档密码
hashcat -m 9600 -a 0 office.txt rockyou.txt

3. 高级规则引擎

# 使用预置规则组合(推荐)
hashcat -m 0 -a 0 hashes.txt rockyou.txt \
  -r /usr/share/hashcat/rules/toggles1.rule \
  -r /usr/share/hashcat/rules/append-s.rule

# 自定义规则文件
cat > /opt/hashcat-rules/custom.rule << 'EOF'
# 追加年份
$2$0$2$4
$2$0$2$5
$2$0$2$6

# 追加常见后缀
$!
$@
$#
$1$2$3
$a$d$m$i$n

# 首字母大写
c

# Leet speak替换
sa@ se3 si1 so0 ss$ st7

# 追加数字
$0$0$0$0 $1$1$1$1 $2$0$2$4

# 多规则组合
c $2$0$2$4
c $!
c sa@ se3
EOF

# 使用自定义规则
hashcat -m 0 -a 0 hashes.txt rockyou.txt -r /opt/hashcat-rules/custom.rule

4. 掩码攻击详解

# 掩码字符集
# ?l = abcdefghijklmnopqrstuvwxyz
# ?u = ABCDEFGHIJKLMNOPQRSTUVWXYZ
# ?d = 0123456789
# ?s = special chars
# ?a = ?l?u?d?s
# ?b = 0x00-0xff

# 常用掩码模式
# 8位密码:首字母大写+5小写+2数字
hashcat -m 0 -a 3 hashes.txt ?u?l?l?l?l?l?d?d

# 6-8位纯数字
hashcat -m 0 -a 3 hashes.txt --increment --increment-min 6 --increment-max 8 ?d?d?d?d?d?d?d?d

# 自定义字符集
hashcat -m 0 -a 3 hashes.txt -1 ?l?d ?1?1?1?1?1?1?1?1

# 键盘模式
hashcat -m 0 -a 3 hashes.txt ?l?l?l?l?l?d?d?d --markov-threshold=50

5. 多GPU并行

# 指定GPU设备
hashcat -m 0 -a 0 -d 1,2,3,4 hashes.txt rockyou.txt

# GPU负载均衡
hashcat -m 0 -a 0 -d 1,2,3,4 --backend-vector-width=128 hashes.txt rockyou.txt

# 温度监控(防止过热)
watch -n 1 nvidia-smi

实战场景

场景1:企业AD密码审计

# 1. 使用secretsdump提取NTLM哈希
secretsdump.py DOMAIN/user:password@dc_ip

# 2. 准备哈希文件(只取NTLM部分)
cat ntds.dit | awk -F: '{print $4}' > ntlm_hashes.txt

# 3. 使用常见密码字典+规则
hashcat -m 1000 -a 0 ntlm_hashes.txt \
  /usr/share/wordlists/rockyou.txt \
  -r /usr/share/hashcat/rules/d3ad0ne.rule \
  --potfile-path=ad_audit.pot

# 4. 掩码攻击破解剩余
hashcat -m 1000 -a 3 ntlm_hashes.txt \
  --increment --increment-min 6 --increment-max 10 \
  ?u?l?l?l?l?d?d \
  --potfile-path=ad_audit.pot

# 5. 生成报告
hashcat --show ntlm_hashes.txt --potfile-path=ad_audit.pot | wc -l
echo "破解率: $(hashcat --show ntlm_hashes.txt --potfile-path=ad_audit.pot | wc -l) / $(wc -l < ntlm_hashes.txt)"

场景2:WiFi WPA2密码破解

# 1. 捕获握手包
airmon-ng start wlan0
airodump-ng wlan0mon -c 6 --bssid AA:BB:CC:DD:EE:FF -w capture
aireplay-ng -0 5 -a AA:BB:CC:DD:EE:FF wlan0mon

# 2. 转换格式
aircrack-ng capture-01.cap -J wpa_capture
hashcat -m 22000 wpa_capture.hccapx rockyou.txt

# 3. 使用规则
hashcat -m 22000 wpa_capture.hccapx \
  /usr/share/wordlists/rockyou.txt \
  -r /usr/share/hashcat/rules/best64.rule

场景3:密码策略合规检测

cat > /opt/password-.sh << 'SCRIPT'
#!/bin/bash
HASH_FILE="$1"
HASH_TYPE="$2"  # 1000=NTLM, 1800=SHA-512
WORDLIST="/usr/share/wordlists/rockyou.txt"
POT="/tmp/audit.pot"

echo "[*] Phase 1: 字典攻击"
hashcat -m $HASH_TYPE -a 0 $HASH_FILE $WORDLIST \
  -r /usr/share/hashcat/rules/best64.rule \
  --potfile-path=$POT --quiet

echo "[*] Phase 2: 常见模式"
hashcat -m $HASH_TYPE -a 0 $HASH_FILE \
  /opt/wordlists/common-passwords.txt \
  --potfile-path=$POT --quiet

echo "[*] Phase 3: 掩码(6-8位数字)"
hashcat -m $HASH_TYPE -a 3 $HASH_FILE \
  --increment --increment-min 6 --increment-max 8 \
  ?d?d?d?d?d?d?d?d \
  --potfile-path=$POT --quiet

echo "[*] Phase 4: 掩码(简单字母+数字)"
hashcat -m $HASH_TYPE -a 3 $HASH_FILE \
  --increment --increment-min 6 --increment-max 8 \
  ?l?l?l?l?l?d?d?d \
  --potfile-path=$POT --quiet

TOTAL=$(wc -l < $HASH_FILE)
CRACKED=$(hashcat --show $HASH_FILE --potfile-path=$POT 2>/dev/null | wc -l)
echo "========================================="
echo "审计完成"
echo "总计: $TOTAL 个哈希"
echo "已破解: $CRACKED 个"
echo "破解率: $(echo "scale=2; $CRACKED*100/$TOTAL" | bc)%"
echo "========================================="
SCRIPT
chmod +x /opt/password-audit.sh

Hashcat性能优化

# 强制使用特定OpenCL内核
hashcat -m 0 -a 0 hashes.txt rockyou.txt --force

# 工作负载配置
# -n 1: 低负载(桌面使用)
# -n 2: 正常
# -n 3: 高负载(专用服务器)
# -n 4: 失速(远程SSH使用)
hashcat -m 0 -a 0 hashes.txt rockyou.txt -n 3

# 调试模式(只测试少量候选)
hashcat -m 0 -a 0 hashes.txt rockyou.txt --limit 10000

对比表

功能 Hashcat Elcomsoft Passware
哈希格式 300+ 200+ 150+
GPU加速 多GPU 支持 支持
规则引擎 极强 有限 有限
掩码攻击 完整 支持 支持
分布式 支持 支持 支持
价格 免费 $599+ $799+

Hashcat的规则引擎是其最大优势——一个精心设计的规则文件可以将破解率从30%提升到70%以上。这比花 $599 买商业软件有意义得多。

常见问题

为什么Hashcat是最佳选择

>为什么Hashcat是最佳选择 工具 功能 GPU支持 规则引擎 价格 Hashcat 全格式破解 多GPU 强大规则 免费 John the Ripper 全格式破解 有限 有限 免费 Elcomsoft 商业破解 支持 有限 $599+ Passware 商业破解 支持 有限 $799+ Hashcat支持300+种哈希格式,支持多GPU并行,规则引擎和掩码攻击组合可以覆盖绝大多数密码策略测试需求。

评论