一次稍显曲折的爆破经历
字数 1159 2025-08-20 18:18:04
用户名与密码爆破实战教学文档
1. 目标识别与初步侦察
- 目标系统:cc.test.com(示例域名)
- 初始发现:仅提供登录框界面
- 关键发现:输入"admin"后提示"管理员不存在",表明系统会验证用户名存在性
2. 用户名枚举技术
2.1 初步爆破
- 使用常规用户名字典进行爆破
- 获得三个有效用户名:
- test
- wangw
- wangy
2.2 用户名模式分析
- 观察到"wangw"和"wangy"遵循特定命名规则:
- 姓氏全拼 + 名字首字母简拼
- 示例:王伟 → wangw,王勇 → wangy
2.3 定制化字典生成
数据准备
- 获取百家姓列表(242个单姓)
- 使用Notepad++处理:
- 删除复姓(数量较少)
- 将汉字转换为拼音
- 去重处理
字典生成策略
- 第一层组合:姓氏拼音 + 26个字母
- 示例:zhanga, zhangb,..., zhangz
- 第二层组合:姓氏拼音 + 26×26双字母组合
- 示例:zhangaa, zhangab,..., zhangzz
工具使用
- 使用专业字典生成工具(如Crunch或自定义脚本)
- 生成针对中文姓名的专用爆破字典
3. 密码爆破技术
3.1 初始尝试
- 发现密码字段使用MD5加密传输
- 尝试方法:
- 多账号小字典爆破(失败)
- 常用弱口令TOP5000爆破(失败)
- 基于厂商域名生成字典(失败)
3.2 针对性爆破策略
- 对每个有效用户名单独制作字典
- 采用渐进式爆破方法:
- 先尝试TOP30常用密码
- 再尝试TOP5000
- 最后使用定制字典
- 成功案例:第三个用户名成功爆破出密码
4. 成功后的发现
- 进入后台后发现两处SQL注入漏洞
- 漏洞利用方法未详细说明(需进一步测试)
5. 技术总结与最佳实践
5.1 关键要点
-
用户名枚举:
- 关注系统反馈差异
- 分析已有用户名模式
- 定制符合目标用户特征的字典
-
密码爆破:
- 识别加密方式(本例为MD5)
- 采用分层爆破策略
- 对每个账号单独处理
-
字典工程:
- 基于目标特征生成字典
- 中文姓名特殊处理
- 使用工具自动化生成
5.2 防御建议
- 限制登录尝试频率
- 使用统一模糊错误信息
- 实施多因素认证
- 避免使用可预测的用户名规则
- 对敏感操作增加验证码
6. 工具与资源
-
字典工具:
- Crunch
- CUPP(Common User Passwords Profiler)
- 自定义Python脚本
-
爆破工具:
- Burp Suite Intruder
- Hydra
- Medusa
-
资源链接:
- 百家姓列表:https://baike.baidu.com/item/百家姓/194637
- 中文拼音转换工具
- 常用密码TOP列表
7. 法律与道德声明
- 本技术文档仅用于安全研究与防御目的
- 未经授权对系统进行测试属于违法行为
- 建议在获得书面授权后进行安全评估