攻防演练之迂回技战法真实案例
字数 1742 2025-08-20 18:18:17

攻防演练之迂回技战法真实案例教学文档

1. 案例背景与目标

在攻防演练中,当面对一个只有登录框的目标系统(记为系统A)且常规测试无法突破时,可以采用迂回战术。本案例展示了如何通过寻找同类型站点、获取源码、代码审计最终发现漏洞并攻陷目标系统的完整过程。

2. 攻击流程详解

2.1 初始信息收集

  1. 目标分析:面对系统A的登录界面,常规渗透测试无果
  2. 特征提取:从HTML中提取关键字(如特定类名、函数名、接口路径等)
  3. 测绘搜索:使用测绘平台(如Hunter)搜索同类型站点
    • 优先选择云厂商主机(通常防护较弱且可能托管多个站点)

2.2 第一次迂回尝试

  1. 同类型站点测试:对找到的同类型站点进行测试
  2. 发现突破口:找到一个存在SQL注入漏洞的站点B
    • 通过注入进入后台
    • 利用文件上传功能获取Webshell
  3. 源码获取:通过Webshell下载系统A的源码
  4. 代码审计:发现"登录绕过+文件上传"组合漏洞
  5. 攻击测试站:成功利用漏洞攻陷同类型测试站

2.3 遭遇挫折

  1. 攻击目标A失败:发现目标A的接口与测试站不同
  2. 差异分析
    • 目标A登录包包含getPhoneByLoginName接口
    • 测试站源码中无此接口
    • 结论:目标A与测试站版本不一致

2.4 第二次迂回尝试

  1. 重新特征提取:再次提取系统A的独特特征
  2. 测绘搜索:找到3个同类型资产
  3. 横向移动
    • 通过云主机IP的其他端口站点进行打点
    • 获取低权限Webshell(受360防护限制)
  4. 权限提升:成功提权
  5. 站点定位
    • 使用命令:C:\Windows\System32\inetsrv\appcmd list site
    • 从众多站点中识别出目标相关站点

2.5 深入审计与漏洞发现

  1. 源码审计工具:使用dnSpy进行.NET程序反编译分析
  2. 登录流程分析
    • 第一步:用户名验证手机号是否存在
    • 第二步:需要手机验证码登录
    • 第三步:通过/Login/loginUser验证用户
  3. 关键发现
    • 真正赋予session的是第三步
    • 第三步仅验证账号密码,不验证手机验证码
    • 构造/Login/loginUser数据包可绕过验证码机制

2.6 获取凭证

  1. 测试站分析
    • 判断为开发商定制开发测试站
    • 可能包含测试文件和数据库文件
  2. 目录翻找
    • 发现与目标站相关的用户名和明文密码
    • 找到历史数据库文件
  3. 凭证验证:成功登录目标站

2.7 最终攻击

  1. 后台访问:使用获取的凭证直接登录
  2. 获取Webshell
    • 利用后台功能上传恶意文件
    • 绕过WAF后缀限制(如特殊后缀处理)
  3. 系统控制:成功获取目标系统控制权

3. 关键技术点总结

3.1 迂回战术核心思路

  1. 源码获取途径
    • 找同系统其他站点→渗透→获取源码
    • 测绘搜索→找源码→直接审计
  2. 漏洞利用链
    • 审计发现未授权RCE
    • 或通过同系统站点渗透→RCE→审计→未授权RCE

3.2 关键技巧

  1. 云主机优先:云上机器通常有多个站点且防护较弱
  2. 版本差异识别:通过接口对比判断系统版本
  3. 登录流程绕过:分析多步骤认证中的逻辑缺陷
  4. 测试数据利用:开发测试站常遗留测试账户和数据库
  5. WAF绕过:针对文件上传功能的特殊后缀处理

3.3 工具使用

  1. 测绘平台:Hunter等
  2. 代码审计工具:dnSpy(针对.NET程序)
  3. 站点识别:Windows的appcmd命令
  4. 提权工具:根据系统环境选择合适工具

4. 防御建议

  1. 认证加固
    • 多因素认证步骤间应有强关联
    • 避免认证流程可被分步绕过
  2. 测试环境管理
    • 测试账户不应使用真实业务数据
    • 测试完成后应及时清理测试数据
  3. 源码保护
    • 避免源码可被轻易下载
    • 生产环境与测试环境应严格隔离
  4. 权限控制
    • 最小权限原则
    • 后台功能应有严格权限验证
  5. WAF规则
    • 文件上传功能应有全面的后缀检测机制
    • 关键接口应有异常请求检测

5. 总结

本案例展示了在正面攻击受阻时,通过寻找同源系统、获取源码、深入审计发现逻辑漏洞,最终攻陷目标的完整过程。关键在于:

  1. 灵活运用测绘和横向移动技术
  2. 深入理解系统认证流程
  3. 善于利用开发测试环境遗留信息
  4. 耐心细致的代码审计能力

这种迂回战术在攻防演练中往往能取得奇效,同时也提醒防御方需要全面考虑系统各个层面的安全性。

攻防演练之迂回技战法真实案例教学文档 1. 案例背景与目标 在攻防演练中,当面对一个只有登录框的目标系统(记为系统A)且常规测试无法突破时,可以采用迂回战术。本案例展示了如何通过寻找同类型站点、获取源码、代码审计最终发现漏洞并攻陷目标系统的完整过程。 2. 攻击流程详解 2.1 初始信息收集 目标分析 :面对系统A的登录界面,常规渗透测试无果 特征提取 :从HTML中提取关键字(如特定类名、函数名、接口路径等) 测绘搜索 :使用测绘平台(如Hunter)搜索同类型站点 优先选择云厂商主机(通常防护较弱且可能托管多个站点) 2.2 第一次迂回尝试 同类型站点测试 :对找到的同类型站点进行测试 发现突破口 :找到一个存在SQL注入漏洞的站点B 通过注入进入后台 利用文件上传功能获取Webshell 源码获取 :通过Webshell下载系统A的源码 代码审计 :发现"登录绕过+文件上传"组合漏洞 攻击测试站 :成功利用漏洞攻陷同类型测试站 2.3 遭遇挫折 攻击目标A失败 :发现目标A的接口与测试站不同 差异分析 : 目标A登录包包含 getPhoneByLoginName 接口 测试站源码中无此接口 结论:目标A与测试站版本不一致 2.4 第二次迂回尝试 重新特征提取 :再次提取系统A的独特特征 测绘搜索 :找到3个同类型资产 横向移动 : 通过云主机IP的其他端口站点进行打点 获取低权限Webshell(受360防护限制) 权限提升 :成功提权 站点定位 : 使用命令: C:\Windows\System32\inetsrv\appcmd list site 从众多站点中识别出目标相关站点 2.5 深入审计与漏洞发现 源码审计工具 :使用dnSpy进行.NET程序反编译分析 登录流程分析 : 第一步:用户名验证手机号是否存在 第二步:需要手机验证码登录 第三步:通过 /Login/loginUser 验证用户 关键发现 : 真正赋予session的是第三步 第三步仅验证账号密码,不验证手机验证码 构造 /Login/loginUser 数据包可绕过验证码机制 2.6 获取凭证 测试站分析 : 判断为开发商定制开发测试站 可能包含测试文件和数据库文件 目录翻找 : 发现与目标站相关的用户名和明文密码 找到历史数据库文件 凭证验证 :成功登录目标站 2.7 最终攻击 后台访问 :使用获取的凭证直接登录 获取Webshell : 利用后台功能上传恶意文件 绕过WAF后缀限制(如特殊后缀处理) 系统控制 :成功获取目标系统控制权 3. 关键技术点总结 3.1 迂回战术核心思路 源码获取途径 : 找同系统其他站点→渗透→获取源码 测绘搜索→找源码→直接审计 漏洞利用链 : 审计发现未授权RCE 或通过同系统站点渗透→RCE→审计→未授权RCE 3.2 关键技巧 云主机优先 :云上机器通常有多个站点且防护较弱 版本差异识别 :通过接口对比判断系统版本 登录流程绕过 :分析多步骤认证中的逻辑缺陷 测试数据利用 :开发测试站常遗留测试账户和数据库 WAF绕过 :针对文件上传功能的特殊后缀处理 3.3 工具使用 测绘平台 :Hunter等 代码审计工具 :dnSpy(针对.NET程序) 站点识别 :Windows的appcmd命令 提权工具 :根据系统环境选择合适工具 4. 防御建议 认证加固 : 多因素认证步骤间应有强关联 避免认证流程可被分步绕过 测试环境管理 : 测试账户不应使用真实业务数据 测试完成后应及时清理测试数据 源码保护 : 避免源码可被轻易下载 生产环境与测试环境应严格隔离 权限控制 : 最小权限原则 后台功能应有严格权限验证 WAF规则 : 文件上传功能应有全面的后缀检测机制 关键接口应有异常请求检测 5. 总结 本案例展示了在正面攻击受阻时,通过寻找同源系统、获取源码、深入审计发现逻辑漏洞,最终攻陷目标的完整过程。关键在于: 灵活运用测绘和横向移动技术 深入理解系统认证流程 善于利用开发测试环境遗留信息 耐心细致的代码审计能力 这种迂回战术在攻防演练中往往能取得奇效,同时也提醒防御方需要全面考虑系统各个层面的安全性。