Brute Force Attack 暴力破解
穷举所有可能,试到对为止。
是 密码攻击 里最朴素的一种,也常用在破解加密、PIN、tokens、URL 路径上。
几种变体
| 类型 | 怎么打 |
|---|---|
| 纯暴力 | 从 aaaa 试到 zzzz |
| 字典攻击 | 用泄露密码字典(rockyou.txt 等)试 |
| 混合攻击 | 字典词 + 数字/符号变形(password1!) |
| Credential stuffing | 拿别处泄露的”邮箱+密码”对去其他网站试 |
| 反向暴力 | 固定密码,换用户名(“Password123” 试遍所有用户) |
影响破解时间的因素
- 密码长度 —— 每多一位,空间×字符集大小
- 字符集 —— 纯数字 vs 数字+大小写+符号
- 算力 —— GPU、ASIC、云算力
- 哈希算法 —— bcrypt、Argon2 慢哈希 vs MD5、SHA-1 快哈希
- 是否加盐 —— 加盐会废掉预计算的彩虹表
防御
- 强密码 + 长度 —— 长比复杂更重要
- MFA —— 即便密码破了,还要二次验证
- 登录限速 / 锁定 —— 失败 N 次锁账号或加 CAPTCHA
- 慢哈希存密码 —— Argon2id、bcrypt
- 加盐 + 加椒(pepper)
- 监控异常登录 —— credential stuffing 通常 IP 集中、速度快