等保测评项——弱口令空口令
字数 2349 2025-08-11 17:39:47

弱口令漏洞原理与防御全面指南

0x01 漏洞原理

弱口令是指容易被猜测或破解工具破解的密码,主要包括:

  • 简单纯数字组合(如123456)
  • 简单数字字母组合(如123qwe)
  • 系统默认密码(如admin/admin888)
  • 基于个人信息的密码(生日、姓名等)

弱口令产生原因:

  1. 安全意识淡薄,为方便记忆使用简单密码
  2. 使用系统默认密码未修改
  3. 密码设置习惯不良(如键盘连续字符qwerty)

0x02 常见弱口令组成模式

  1. 中国常用名TOP500及其组合
  2. 姓名全拼+数字(如zhangsan123)
  3. 姓全拼+名首字母+数字(如zhangs123)
  4. 姓名首字母+数字(如zs123456)
  5. 工号或身份证号
  6. 键盘分布组合(如qwerty、1qaz2wsx)
  7. 特殊节日、纪念日(如20200202)
  8. 好记的数字/字母组合(如888888、abcdef)
  9. 特殊含义单词及变形(如love→l0ve)

0x03 弱口令攻击面

易受攻击的服务类型

  1. 远程维护类:SSH、Telnet、RDP
  2. 数据库服务:MySQL、MSSQL、Oracle、MongoDB、DB2
  3. 缓存服务:Redis、Kafka
  4. 大数据服务
  5. 云环境接口:各类云平台API、Docker接口
  6. Web应用:各类CMS、OA系统后台
  7. 移动应用:APP、小程序后台

验证码绕过技术

  1. 短信验证码绕过

    • 暴力破解(4-6位数字)
    • 重复使用(未清空session)
    • 客户端回显(验证码泄露在返回包中)
    • 万能验证码(0000、8888等)
    • 空验证码绕过
  2. 图片验证码绕过

    • OCR识别
    • 验证码复用
    • 前端JS验证绕过
  3. 其他验证码问题

    • 验证码在URL参数中可修改
    • 验证码生成规律可预测

0x04 弱口令检测工具集

综合检测工具

  1. SNETCraker

    • 支持SSH、RDP、SMB、MySQL等20+服务
    • 特点:批量IP扫描、自带端口扫描、自定义字典
    • 下载:https://github.com/shack2/SNETCracker
  2. hydra

    • 经典爆破工具,支持50+协议
    • 跨平台(Linux/Windows)
    • 下载:https://github.com/ory/hydra
  3. Go-x-crack

    • Go语言编写,支持FTP/SSH/SMB等
    • 跨平台支持
    • 下载:https://github.com/netxfly/x-crack

专项检测工具

  1. WebCrack

    • 网站后台弱口令专用
    • 下载:https://github.com/yzddmr6/WebCrack
  2. WeblogicWeakPwd

    • Weblogic专用检测
    • 下载:https://github.com/rabbitmask/WeblogicWeakPwd
  3. domainWeakPasswdCheck

    • 域账号弱口令审计
    • 下载:https://github.com/chroblert/domainWeakPasswdCheck

字典生成工具

  1. pydictor

    • 多功能字典生成
    • 支持自定义规则
    • 下载:https://github.com/LandGrey/pydictor
  2. 白鹿社工字典生成器

    • 基于社工规律的字典生成
    • 下载:https://github.com/x311/BaiLu-SED-Tool
  3. 在线字典工具

    • https://www.bugku.com/mima/
    • 可根据个人信息生成针对性字典

BurpSuite扩展

  1. jsEncrypter

    • 解决密码加密问题
    • 下载:https://github.com/bit4woo/jsEncrypter
  2. reCAPTCHA

    • 验证码处理扩展
    • 下载:https://github.com/bit4woo/reCAPTCHA

0x05 防御加固建议

密码策略

  1. 复杂度要求

    • 长度≥8位
    • 包含大小写字母、数字、特殊字符
    • 不使用连续字符(如123456)或重复字符(如aaaaaa)
  2. 内容限制

    • 禁止包含个人信息(姓名、生日等)
    • 禁止使用字典单词及简单变形
    • 禁止使用键盘连续字符
  3. 管理策略

    • 定期更换密码(建议90天)
    • 密码历史记录(禁止重复使用)
    • 双因素认证

验证码加固

  1. 有效性控制

    • 设置合理失效时间(建议180秒)
    • 一次认证后立即失效
    • 服务端生成验证码
  2. 尝试限制

    • 单位时间内失败次数限制(如5次/5分钟)
    • 失败次数过多锁定账号
  3. 复杂度提升

    • 使用干扰线、扭曲变形
    • 动态验证码(如滑动拼图)
    • 多因素验证组合

用户教育

  1. 办公密码与私人密码分离
  2. 使用记忆诀窍创建复杂密码(如句子首字母+标点)
  3. 不同系统使用不同密码
  4. 避免在设备中明文存储密码

0x06 参考字典资源

  1. 基础弱口令字典

    • TOP100:https://github.com/estell-yf/Dict/blob/master/登录账号/TOP100.txt
    • TOP1000:https://github.com/estell-yf/Dict/blob/master/登录账号/top1000.txt
    • 用户名TOP500:https://github.com/estell-yf/Dict/blob/master/登录账号/Top500用户名.txt
  2. 专项字典

    • 中间件弱口令:https://github.com/estell-yf/Dict/tree/master/中间件
    • 数据库弱口令:https://github.com/estell-yf/Dict/tree/master/数据库
    • 网络设备默认密码:https://github.com/estell-yf/Dict/tree/master/网络设备

通过全面实施上述防御措施,可有效降低弱口令带来的安全风险,提升系统整体安全性。

弱口令漏洞原理与防御全面指南 0x01 漏洞原理 弱口令是指容易被猜测或破解工具破解的密码,主要包括: 简单纯数字组合(如123456) 简单数字字母组合(如123qwe) 系统默认密码(如admin/admin888) 基于个人信息的密码(生日、姓名等) 弱口令产生原因: 安全意识淡薄,为方便记忆使用简单密码 使用系统默认密码未修改 密码设置习惯不良(如键盘连续字符qwerty) 0x02 常见弱口令组成模式 中国常用名TOP500及其组合 姓名全拼+数字(如zhangsan123) 姓全拼+名首字母+数字(如zhangs123) 姓名首字母+数字(如zs123456) 工号或身份证号 键盘分布组合(如qwerty、1qaz2wsx) 特殊节日、纪念日(如20200202) 好记的数字/字母组合(如888888、abcdef) 特殊含义单词及变形(如love→l0ve) 0x03 弱口令攻击面 易受攻击的服务类型 远程维护类 :SSH、Telnet、RDP 数据库服务 :MySQL、MSSQL、Oracle、MongoDB、DB2 缓存服务 :Redis、Kafka 大数据服务 云环境接口 :各类云平台API、Docker接口 Web应用 :各类CMS、OA系统后台 移动应用 :APP、小程序后台 验证码绕过技术 短信验证码绕过 暴力破解(4-6位数字) 重复使用(未清空session) 客户端回显(验证码泄露在返回包中) 万能验证码(0000、8888等) 空验证码绕过 图片验证码绕过 OCR识别 验证码复用 前端JS验证绕过 其他验证码问题 验证码在URL参数中可修改 验证码生成规律可预测 0x04 弱口令检测工具集 综合检测工具 SNETCraker 支持SSH、RDP、SMB、MySQL等20+服务 特点:批量IP扫描、自带端口扫描、自定义字典 下载:https://github.com/shack2/SNETCracker hydra 经典爆破工具,支持50+协议 跨平台(Linux/Windows) 下载:https://github.com/ory/hydra Go-x-crack Go语言编写,支持FTP/SSH/SMB等 跨平台支持 下载:https://github.com/netxfly/x-crack 专项检测工具 WebCrack 网站后台弱口令专用 下载:https://github.com/yzddmr6/WebCrack WeblogicWeakPwd Weblogic专用检测 下载:https://github.com/rabbitmask/WeblogicWeakPwd domainWeakPasswdCheck 域账号弱口令审计 下载:https://github.com/chroblert/domainWeakPasswdCheck 字典生成工具 pydictor 多功能字典生成 支持自定义规则 下载:https://github.com/LandGrey/pydictor 白鹿社工字典生成器 基于社工规律的字典生成 下载:https://github.com/x311/BaiLu-SED-Tool 在线字典工具 https://www.bugku.com/mima/ 可根据个人信息生成针对性字典 BurpSuite扩展 jsEncrypter 解决密码加密问题 下载:https://github.com/bit4woo/jsEncrypter reCAPTCHA 验证码处理扩展 下载:https://github.com/bit4woo/reCAPTCHA 0x05 防御加固建议 密码策略 复杂度要求 : 长度≥8位 包含大小写字母、数字、特殊字符 不使用连续字符(如123456)或重复字符(如aaaaaa) 内容限制 : 禁止包含个人信息(姓名、生日等) 禁止使用字典单词及简单变形 禁止使用键盘连续字符 管理策略 : 定期更换密码(建议90天) 密码历史记录(禁止重复使用) 双因素认证 验证码加固 有效性控制 : 设置合理失效时间(建议180秒) 一次认证后立即失效 服务端生成验证码 尝试限制 : 单位时间内失败次数限制(如5次/5分钟) 失败次数过多锁定账号 复杂度提升 : 使用干扰线、扭曲变形 动态验证码(如滑动拼图) 多因素验证组合 用户教育 办公密码与私人密码分离 使用记忆诀窍创建复杂密码(如句子首字母+标点) 不同系统使用不同密码 避免在设备中明文存储密码 0x06 参考字典资源 基础弱口令字典 : TOP100:https://github.com/estell-yf/Dict/blob/master/登录账号/TOP100.txt TOP1000:https://github.com/estell-yf/Dict/blob/master/登录账号/top1000.txt 用户名TOP500:https://github.com/estell-yf/Dict/blob/master/登录账号/Top500用户名.txt 专项字典 : 中间件弱口令:https://github.com/estell-yf/Dict/tree/master/中间件 数据库弱口令:https://github.com/estell-yf/Dict/tree/master/数据库 网络设备默认密码:https://github.com/estell-yf/Dict/tree/master/网络设备 通过全面实施上述防御措施,可有效降低弱口令带来的安全风险,提升系统整体安全性。