渗透实战:记一次弱口令的挖掘
字数 1406 2025-08-24 16:48:07

渗透测试实战:弱口令挖掘技术详解

1. 信息收集阶段

1.1 初始信息获取

  • 仅获得目标系统域名,无测试账号、资产IP等其他信息
  • 使用nslookup进行域名解析,获取IP地址

1.2 端口扫描技术

  • 对目标IP进行端口扫描
  • 发现开放端口:
    • 443 (HTTPS)
    • 2000 (未识别服务)

1.3 Web目录扫描

  • 使用目录扫描工具发现后台登录界面
  • 发现前台登录页面有短信登录功能

2. 初始渗透尝试

2.1 短信炸弹漏洞测试

  • 检查短信发送功能是否存在频率和次数限制
  • 测试结果:存在防护措施,无法利用

2.2 密码爆破尝试

  • 发现密码采用RSA加密
  • 验证码为真实验证码
  • 结论:传统爆破方法难以奏效

3. 旁路渗透策略

3.1 测试系统发现

  • 分析:新上线系统通常有测试环境
  • 方法:
    • 从前台登录页面源码中提取公司特征文本
    • 使用网络空间搜索引擎查询:
      title = "xxxx" & body = "xxxx"
      

3.2 测试环境端口扫描

  • 发现开放端口:
    • 22 (SSH)
    • 3306 (MySQL)
    • 6379 (Redis)
    • 3000 (HTTP 测试网站)
    • 5080 (HTTP 同框架网站)
    • 8848 (HTTP Nacos服务)

4. Nacos服务利用

4.1 Nacos简介

  • 动态服务发现、配置管理和服务管理平台
  • 默认端口:8848
  • 常见默认凭证:nacos:nacos

4.2 敏感信息获取

  • 成功登录Nacos控制台
  • 获取MySQL和Redis的密码
  • 通过MySQL访问网站数据库
  • 提取用户表数据,包括密码hash和salt

5. 弱口令分析与爆破

5.1 密码模式分析

  • 发现大量hash相同,提示弱口令或默认密码
  • 常见格式:公司简写(4字母)+4位数字(如abcd1234)

5.2 字典优化策略

  1. 基础变种

    • 大小写组合简写+数字(如Abcd1234)
    • 首字母大写简写+数字(更符合用户习惯)
  2. 特殊字符变种

    • 大小写组合简写+特殊字符+数字(如Abcd#1234)
    • 大小写组合简写+数字+特殊字符(如Abcd1234!)

5.3 爆破结果

  • 成功爆破出后台密码:Abcd2333@
  • 密码分析:
    • 包含大小写字母
    • 包含数字
    • 包含特殊字符
    • 但仍属于"弱口令"范畴(基于公司特定模式)

6. 生产环境利用

6.1 密码复用测试

  • 整理测试环境获取的账号密码
  • 在生产环境尝试登录:
    • abcdadmin / Abcd#2022
    • abcdtest01 / Abcd2333!
    • abcdtest02 / Abcd2333!
    • admin01 / abcd2333

6.2 成功渗透

  • 使用测试环境凭证成功登录生产环境后台

7. 防御建议

7.1 密码策略

  • 避免使用公司相关信息作为密码基础
  • 强制使用随机生成的复杂密码
  • 定期更换密码

7.2 系统安全

  • 测试环境不应对外开放
  • 默认服务应修改默认凭证
  • 敏感服务(如MySQL、Redis)不应直接暴露在公网

7.3 监控措施

  • 实施登录尝试监控和限制
  • 对异常登录行为进行告警

8. 技术总结

  1. 信息收集是渗透测试的基础,要全面细致
  2. 旁路渗透思路:当主站防护严密时,寻找关联系统
  3. 默认凭证利用是常见突破口
  4. 密码模式分析能显著提高爆破效率
  5. 测试环境往往是安全薄弱环节
  6. 密码复用现象普遍存在

本案例展示了如何通过系统化思考和细致分析,从看似安全的系统中挖掘出高危漏洞。弱口令防护不应仅停留在复杂度要求上,还需考虑业务相关性和使用模式。

渗透测试实战:弱口令挖掘技术详解 1. 信息收集阶段 1.1 初始信息获取 仅获得目标系统域名,无测试账号、资产IP等其他信息 使用 nslookup 进行域名解析,获取IP地址 1.2 端口扫描技术 对目标IP进行端口扫描 发现开放端口: 443 (HTTPS) 2000 (未识别服务) 1.3 Web目录扫描 使用目录扫描工具发现后台登录界面 发现前台登录页面有短信登录功能 2. 初始渗透尝试 2.1 短信炸弹漏洞测试 检查短信发送功能是否存在频率和次数限制 测试结果:存在防护措施,无法利用 2.2 密码爆破尝试 发现密码采用RSA加密 验证码为真实验证码 结论:传统爆破方法难以奏效 3. 旁路渗透策略 3.1 测试系统发现 分析:新上线系统通常有测试环境 方法: 从前台登录页面源码中提取公司特征文本 使用网络空间搜索引擎查询: 3.2 测试环境端口扫描 发现开放端口: 22 (SSH) 3306 (MySQL) 6379 (Redis) 3000 (HTTP 测试网站) 5080 (HTTP 同框架网站) 8848 (HTTP Nacos服务) 4. Nacos服务利用 4.1 Nacos简介 动态服务发现、配置管理和服务管理平台 默认端口:8848 常见默认凭证:nacos:nacos 4.2 敏感信息获取 成功登录Nacos控制台 获取MySQL和Redis的密码 通过MySQL访问网站数据库 提取用户表数据,包括密码hash和salt 5. 弱口令分析与爆破 5.1 密码模式分析 发现大量hash相同,提示弱口令或默认密码 常见格式:公司简写(4字母)+4位数字(如abcd1234) 5.2 字典优化策略 基础变种 : 大小写组合简写+数字(如Abcd1234) 首字母大写简写+数字(更符合用户习惯) 特殊字符变种 : 大小写组合简写+特殊字符+数字(如Abcd#1234) 大小写组合简写+数字+特殊字符(如Abcd1234 !) 5.3 爆破结果 成功爆破出后台密码:Abcd2333@ 密码分析: 包含大小写字母 包含数字 包含特殊字符 但仍属于"弱口令"范畴(基于公司特定模式) 6. 生产环境利用 6.1 密码复用测试 整理测试环境获取的账号密码 在生产环境尝试登录: abcdadmin / Abcd#2022 abcdtest01 / Abcd2333 ! abcdtest02 / Abcd2333 ! admin01 / abcd2333 6.2 成功渗透 使用测试环境凭证成功登录生产环境后台 7. 防御建议 7.1 密码策略 避免使用公司相关信息作为密码基础 强制使用随机生成的复杂密码 定期更换密码 7.2 系统安全 测试环境不应对外开放 默认服务应修改默认凭证 敏感服务(如MySQL、Redis)不应直接暴露在公网 7.3 监控措施 实施登录尝试监控和限制 对异常登录行为进行告警 8. 技术总结 信息收集 是渗透测试的基础,要全面细致 旁路渗透 思路:当主站防护严密时,寻找关联系统 默认凭证 利用是常见突破口 密码模式分析 能显著提高爆破效率 测试环境 往往是安全薄弱环节 密码复用 现象普遍存在 本案例展示了如何通过系统化思考和细致分析,从看似安全的系统中挖掘出高危漏洞。弱口令防护不应仅停留在复杂度要求上,还需考虑业务相关性和使用模式。