如何定制高效的口令爆破字典应对实战?
TOPIC SOURCE
记一次burp爆破中我的学习记录
在渗透测试的密码爆破阶段,字典质量直接决定了攻防的效率与成功率。一个针对目标环境量身定制的字典往往比盲目使用公开大表更能快速逼近真实口令。

关键因素分析
定制字典时,需要从业务特征、用户行为、技术栈以及历史泄漏三方面进行抽丝剥茧。
- 业务特征:如公司名称、产品代号、常用缩写。
- 用户行为:员工生日、入职年份、常用口号。
- 技术栈:使用的框架、语言或默认管理员口令。
- 历史泄漏:公开的 Git 仓库、泄露的配置文件。
实战字典构建流程
从信息收集到字典落地,整个链路可以拆解为五个环节,每一步都尽量保持自动化,以免人工误差。
- 抓取目标公开资料,使用爬虫生成原始词表。
- 对词表进行规则化处理:大小写混合、数字后缀、特殊字符替换。
- 引入常见密码模式库(如 123、!@#、year 等)进行组合。
- 针对前端加密或哈希,预先在本地执行相同算法生成密文。
- 使用压缩与分块技术,确保字典在爆破工具中快速读取。
常见加密与转化
不少登录接口会在前端对密码做一次 MD5、SHA1 或自定义 Base64 编码。若直接使用明文字典,爆破请求会被服务器拒绝。解决方案是将字典内容在本地同步加密后再喂入工具。
# 示例:Python 生成 MD5 加密字典
import hashlib
raw_words = ['admin', 'password', 'P@ssw0rd']
with open('md5_dict.txt', 'w') as f:
for w in raw_words:
md5 = hashlib.md5(w.encode()).hexdigest()
f.write(md5 + 'n')
性能优化技巧
爆破时往往会受到网络延迟与目标限速的双重制约,合理的优化可以让每秒请求数提升数倍。
- 采用多线程或异步 I/O,充分利用本地 CPU 核心。
- 对字典进行前缀分段,配合负载均衡的代理池降低单点瓶颈。
- 开启压缩传输(如 gzip),在目标支持的情况下减少带宽占用。
- 实时监控响应时间,动态调整并发阈值,防止触发锁定机制。
掌握上述思路后,即使面对加盐 MD5、双因素验证等复杂场景,也能在字典层面提前“拆墙”。真正的突破点往往藏在细节之中——比如一次错误的字符替换,就可能让原本需要数千次尝试的口令在百次以内被命中。

参与讨论
这方法挺实用,刚试了下爬公司官网词表真能跑通
前端加密这块坑太多,上次就栽在Base64变种上了