在网络安全领域,弱口令始终是攻击者突破企业防线的”第一道门”。据统计,超过80%的安全入侵事件与凭证泄露或弱口令直接相关。尽管多因素认证(MFA)逐渐普及,但在内网环境、遗留系统、测试环境中,弱口令依然广泛存在。
本文基于一线攻防演练经验,系统梳理30个弱口令漏洞挖掘技巧,涵盖信息收集、字典构建、工具使用、绕过技巧及防御建议,旨在为安全从业者提供可落地的实战参考。
第一部分:信息收集与目标识别
技巧1:资产测绘与端口识别
弱口令挖掘的第一步是精准识别目标资产。使用Nmap进行全端口扫描,重点关注以下服务端口:
-
• SSH (22):Linux服务器管理入口 -
• RDP (3389):Windows远程桌面 -
• MySQL (3306) / Redis (6379) / MSSQL (1433):数据库服务 -
• FTP (21) / SMB (445):文件传输服务 -
• Telnet (23):遗留设备管理 -
• Tomcat (8080) / Weblogic (7001):中间件管理后台
扫描命令示例:
nmap -p- -sV --open -iL targets.txt -oN scan_result.txt
技巧2:服务指纹识别
识别服务版本有助于针对性选择字典。例如,MySQL 5.7与8.0的默认配置差异、不同版本Weblogic的默认口令差异等。使用-sV参数获取版本信息后,结合CVE库查询历史默认口令。
技巧3:Web后台入口发现
通过目录扫描发现潜在登录入口:
-
• 常见路径: /admin、/login、/manage、/system -
• 特定系统:DedeCMS /dede、Discuz/admin.php、ThinkPHP/admin -
• 接口文档:Swagger UI、 /api-docs、/actuator
技巧4:用户名枚举技巧
在Web登录接口中,通过响应差异判断用户名是否存在:
-
• 响应时间差异:存在用户时查询数据库耗时更长 -
• 错误提示差异:”用户名不存在” vs “密码错误” -
• 状态码差异:部分系统对不存在用户返回不同状态码
技巧5:手机号/工号格式推断
当系统使用手机号或工号作为用户名时:
-
• 观察登录框提示信息(如”请输入11位手机号”) -
• 通过注册功能验证号码格式 -
• 结合目标企业所在地生成号段字典(如北京138、139开头)
技巧6:API接口凭证发现
现代应用大量使用API接口,检查以下位置:
-
• JavaScript文件中的硬编码密钥 -
• 移动端APP的SharedPreferences/Keychain -
• 小程序源码中的配置信息 -
• GitHub/GitLab代码仓库泄露
第二部分:字典构建与定制化
技巧7:企业信息定制化字典
基于OSINT(开源情报)构建针对性字典,成功率比通用字典提升40%以上:
信息收集维度:
-
• 公司简称、英文名称、产品品牌 -
• 成立年份、上市代码 -
• 创始人姓名、高管姓名拼音 -
• 办公地点、楼层号、门牌号
组合规则:
公司简称+年份:Tech2024、2024Tech
产品名+后缀:Robot@123、Product!QAZ
部门缩写:HRadmin、Devops2024
技巧8:季节性与周期性口令规律
企业口令常呈现时间周期性特征:
-
• 季度口令: Spring2024、Q1@Pass -
• 项目代号: ProjectX123、Codename!@# -
• 节假日相关: HappyNY2024、MayDay123
技巧9:键盘布局模式识别
常见弱口令不仅包括123456,还有键盘路径模式:
-
• 横向: qwerty、asdfgh、1qaz2wsx -
• 纵向: 1qaz、2wsx、3edc -
• 对角线: 1q2w3e、!QAZ2wsx
技巧10:中文拼音与谐音转换
针对国内企业,将中文转换为拼音组合:
-
• 姓名全拼: zhangsan、wangwu123 -
• 姓名首字母+生日: zs1990、ww8808 -
• 企业口号拼音: chuangxin2024
技巧11:泄露数据交叉验证
利用Have I Been Pwned等泄露数据库:
-
• 查询目标企业历史泄露事件 -
• 分析泄露口令的构成规律 -
• 提取高频出现的模式特征
技巧12:默认口令库维护
建立常见设备/系统默认口令库,定期更新:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
第三部分:自动化爆破与工具链
技巧13:Hydra多协议爆破
Hydra支持50+协议,是弱口令挖掘的核心工具:
# SSH爆破
hydra -L users.txt -P pass.txt -t 6 -vV ssh://192.168.1.1
# RDP爆破(需安装rdp模块)
hydra -L users.txt -P pass.txt rdp://192.168.1.1
# MySQL爆破
hydra -L users.txt -P pass.txt mysql://192.168.1.1
# Web表单爆破
hydra -L users.txt -P pass.txt 192.168.1.1 http-post-form "/login.php:username=^USER^&password=^PASS^:Login failed"
参数优化:
-
• -t:线程数,根据目标防护调整(建议3-6) -
• -w:超时时间,避免网络延迟导致漏报 -
• -f:找到第一对有效凭证即停止
技巧14:Medusa高速并行爆破
Medusa的模块化设计适合大规模扫描:
# 批量扫描IP列表
medusa -H targets.txt -U users.txt -P pass.txt -M ssh -T 10
# 指定端口
medusa -h 192.168.1.1 -U users.txt -P pass.txt -M http -n 8080
技巧15:BurpSuite Intruder精细化爆破
针对Web应用,使用Intruder进行智能爆破:
-
1. Pitchfork模式:用户名和密码异步替换,适合已知用户-密码对应关系 -
2. Cluster Bomb模式:笛卡尔积爆破,覆盖所有组合 -
3. Grep-Extract:从响应中提取Token、错误提示等动态内容
技巧16:验证码绕过技巧
当遇到验证码防护时:
-
• 验证码复用:抓取不变形的验证码图片,重复提交同一验证码值 -
• 逻辑缺陷:删除验证码参数或置空,测试后端是否校验 -
• OCR识别:使用ddddocr等库自动识别简单验证码 -
• 打码平台:对接第三方人工识别服务(成本较高)
技巧17:速率限制绕过
针对账户锁定或IP封禁策略:
-
• 分布式代理:使用代理池轮换IP地址 -
• 低频慢速爆破:设置长间隔(如每5秒一次),避开检测阈值 -
• 多账户轮换:对每个账户仅尝试3-5次常用口令,避免触发锁定 -
• 时间窗口选择:凌晨2-4点执行,利用管理员响应延迟
技巧18:协议特定优化
不同协议的爆破策略差异:
SSH:
-
• 注意 MaxAuthTries配置,默认3次失败后断开 -
• 使用 sshpass脚本配合ProxyCommand跳板
RDP:
-
• Windows Server 2012+默认启用NLA(网络级认证),需特殊处理 -
• 使用 crowbar工具支持RDP多线程
数据库:
-
• MySQL注意 validate_password插件策略 -
• Redis无用户名,直接爆破密码
第四部分:高级挖掘技巧
技巧19:大小写变形与编码绕过
实战中常见的大小写不一致问题:
-
• 用户名 admin与ADMIN可能指向同一账户 -
• 密码大小写敏感性与系统配置相关 -
• 尝试URL编码、Unicode规范化(如 %61dmin)
技巧20:账号密码一致性测试
简单但有效的模式:
-
• 用户名与密码相同: zhangsan/zhangsan -
• 用户名+简单后缀: zhangsan/zhangsan123、zhangsan/123456 -
• 工号/学号作为密码: 2024001/2024001
技巧21:会话凭证复用
通过成功登录的响应包挖掘关联账户:
-
1. 使用已知弱口令登录账户A -
2. 抓取响应包中的 loginName、email、mobile字段 -
3. 将这些值作为新用户名,使用相同密码尝试登录 -
4. 常发现同一密码多账户复用的情况
技巧22:密码重置逻辑缺陷
利用密码重置功能获取或修改凭证:
-
• 重置Token可预测(如时间戳、顺序数字) -
• 重置链接未绑定用户会话 -
• 短信验证码可爆破(4位数字仅10000种可能)
技巧23:API密钥与Token挖掘
现代应用依赖API认证,常见泄露点:
-
• 前端JS文件中的 api_key、access_token -
• 移动端硬编码的Secret Key -
• 日志文件中记录的认证信息 -
• 环境变量配置文件( .env、.config)
技巧24:中间人攻击辅助
在内网环境中,通过流量分析获取凭证:
-
• ARP欺骗捕获明文传输的HTTP认证 -
• 分析NTLM/LDAP认证流量 -
• 利用Responder工具伪造服务捕获Hash
第五部分:特定场景挖掘
技巧25:云服务弱口令治理
云环境特有的风险点:
-
• 云控制台:阿里云、腾讯云主账号弱口令 -
• OSS存储桶:AccessKey ID/Secret泄露 -
• 云数据库:RDS、Redis外网暴露且弱口令 -
• 容器镜像:镜像仓库认证信息
检测方法:
-
• 调用云API获取资产清单 -
• 使用主机安全Agent检测弱口令Hash碰撞 -
• 定期审计云账号权限与访问日志
技巧26:物联网与工控设备
IoT/ICS设备是弱口令重灾区:
-
• 摄像头:海康威视 admin/12345、大华admin/admin -
• 路由器:TP-Link admin/admin、小米admin/admin -
• 工控系统:西门子、施耐德PLC默认凭证
挖掘技巧:
-
• 使用Shodan/Censys搜索特定设备指纹 -
• 关注 title:"Device Name"的Web管理界面 -
• 检查Telnet/串口调试接口
技巧27:开发测试环境
测试环境往往安全基线较低:
-
• 数据库使用 root/root、sa/sa等简单口令 -
• 代码仓库使用默认凭证或弱口令 -
• 测试账号未清理: test/test、demo/demo
技巧28:第三方组件与中间件
关注以下组件的管理后台:
-
• Jenkins:默认无认证或弱口令,可执行系统命令 -
• GitLab:管理员弱口令导致代码泄露 -
• Elasticsearch:早期版本无认证,后期版本默认弱口令 -
• Docker Registry:未授权访问或弱口令
第六部分:防御与治理建议
技巧29:企业弱口令治理体系
建立”预防-发现-处置”闭环:
预防阶段:
-
• 强制密码复杂度策略:长度≥8位,包含3种字符类型 -
• 定期密码更换:建议90天周期 -
• 多因素认证(MFA):TOTP、U2F硬件密钥 -
• 单点登录(SSO)体系:减少密码暴露面
发现阶段:
-
• 部署弱口令扫描器(Hydra/Medusa)定期巡检 -
• 主机安全Agent实时检测弱口令Hash -
• 自定义企业专属弱口令字典 -
• 日志审计:监控异常登录行为
处置阶段:
-
• 强制密码重置策略 -
• 账号冻结与权限回收 -
• 安全事件溯源与通报
技巧30:安全左移与意识培养
从技术与管理双维度降低风险:
技术层面:
-
• DevSecOps流程:在开发阶段引入安全扫描 -
• 镜像规范化:基础镜像移除默认账户 -
• 堡垒机统一管控:禁止直连生产服务器
管理层面:
-
• 全员安全意识培训:弱口令危害案例教育 -
• 攻防演练:模拟钓鱼与弱口令攻击 -
• 安全事件惩处机制:明确责任边界
弱口令漏洞挖掘是渗透测试的基础技能,但绝非简单的”跑字典”工作。有效的挖掘需要结合信息收集、逻辑分析、工具定制与绕过技巧,同时必须严格遵守授权与法律边界。
对于防御方而言,弱口令治理是持续过程,而非一次性项目。通过技术手段(MFA、SSO、密码策略)与管理手段(培训、制度、演练)相结合,才能从根本上降低凭证泄露风险。
安全是一场攻防博弈,唯有理解攻击者的思路,才能构建更坚固的防线。











暂无评论内容