记一次市级攻防演练(已打码)
字数 2240 2025-08-11 17:40:10

市级攻防演练实战教学文档

1. 演练概述

1.1 基本情况

  • 时间:8月中旬(护网结束后)
  • 性质:市级攻防演练
  • 队伍组成:4支队伍(初始2支,后增加2支)
  • 目标分配:每支队伍约90个目标
  • 持续时间:一周(周一抵达现场,周二正式开始,周五结束)

1.2 演练特点

  • 直接提供目标URL,减少前期信息收集时间
  • 中途规则变更:第一天允许内网攻击,第二天禁止内网攻击
  • 主要攻击方式:外网渗透

2. 攻击技术实战案例

2.1 任意文件上传漏洞利用

案例1:旅游公司后台任意文件上传+FTP弱口令

  1. 通过弱口令直接进入后台
  2. 发现上传功能点(景区照片/宣传视频上传)
  3. Burp Suite抓包修改文件后缀上传一句话木马
  4. 配合FTP弱口令(通过爆破获得)进一步利用

案例2:OA系统任意文件上传

  • 发现已被其他攻击者上传的Webshell
  • 利用NC(Netcat)的文件上传漏洞

防御建议

  • 实施严格的文件类型验证(白名单机制)
  • 限制上传文件的可执行权限
  • 定期检查上传目录中的异常文件

2.2 弱口令攻击

常见弱口令场景

  1. 后台管理系统弱口令(多案例)
  2. FTP服务弱口令(旅游公司案例)
  3. MongoDB未授权访问(空口令)
  4. 使用手机号、身份证号等作为弱密码

攻击方法

  • 直接尝试常见弱口令组合
  • 针对特定目标使用相关信息(如手机号)进行爆破

防御建议

  • 强制使用复杂密码策略
  • 实施多因素认证
  • 设置登录失败锁定机制
  • 定期审计账户密码强度

2.3 Shiro反序列化漏洞

攻击流程

  1. 使用扫描器发现Shiro反序列化漏洞
  2. 利用漏洞写入内存马
  3. 获取系统shell权限

防御建议

  • 及时升级Shiro框架到最新安全版本
  • 禁用危险的Java反序列化功能
  • 实施运行时应用自我保护(RASP)

2.4 SQL注入攻击

案例1:投资公司延时注入

  1. 目录扫描发现潜在注入点
  2. 通过fuzz测试获取有效参数
  3. 确认延时注入漏洞存在
  4. 使用sqlmap自动化利用

案例2:学院前台SQL注入

  • 前台直接存在SQL注入点
  • 后台通过弱口令进入后发现数据库信息泄露
  • 发现1521端口(Oracle)开放

防御建议

  • 使用参数化查询或ORM框架
  • 实施严格的输入验证
  • 最小化数据库账户权限
  • 定期进行代码安全审计

2.5 MongoDB未授权访问

攻击过程

  1. 通过FOFA搜索发现27017端口开放
  2. 尝试空口令连接成功
  3. 直接获取数据库访问权限

防御建议

  • 启用MongoDB认证机制
  • 限制绑定IP(不要绑定0.0.0.0)
  • 设置防火墙规则限制访问来源

2.6 任意文件读取

攻击方法

  • 发现文件包含漏洞
  • 利用漏洞读取系统敏感文件

防御建议

  • 限制文件访问路径(使用绝对路径)
  • 实施严格的输入验证
  • 最小化Web服务器权限

2.7 Kibana RCE尝试

攻击过程

  1. 发现Kibana服务
  2. 搜索历史RCE漏洞尝试利用
  3. 未成功利用(原因未说明)

防御建议

  • 保持Kibana版本更新
  • 限制Kibana管理界面访问
  • 监控异常访问日志

3. 攻击流程与方法论

3.1 信息收集

使用工具

  • FOFA:网络空间搜索引擎
  • 鱼鹰:另一款网络空间搜索引擎(与FOFA互补)
  • 扫描器:自动化漏洞扫描

技巧

  • 不同搜索引擎交替使用会有不同收获
  • 夜间批量扫描目标(利用非工作时间)

3.2 漏洞利用流程

  1. 快速筛选目标:排除门户网站等低价值目标
  2. 自动化扫描与手动验证结合
  3. 发现漏洞后立即深入利用
  4. 横向移动(受规则限制中途停止)

3.3 工具使用

  • Burp Suite:抓包改包、漏洞验证
  • Sqlmap:自动化SQL注入
  • NC(Netcat):文件上传利用
  • Cobalt Strike:准备使用但因版本问题受阻

4. 经验总结与建议

4.1 红队经验

  1. 效率优先:在目标众多时,快速筛选高价值目标
  2. 自动化利用:合理使用扫描器提高效率
  3. 规则适应:注意演练规则变化(如内网限制)
  4. 报告编写:及时记录攻击过程和证据

4.2 防御建议

  1. 基础安全加固

    • 消除弱口令
    • 关闭不必要的服务端口
    • 及时修补已知漏洞
  2. 监控与响应

    • 实施7×24小时安全监控
    • 建立应急响应流程
    • 保留完整日志记录
  3. 安全意识

    • 定期进行安全培训
    • 建立安全开发生命周期(SDLC)
    • 定期进行渗透测试和安全评估

5. 附录:攻击技术速查表

漏洞类型 检测方法 利用工具 防御措施
任意文件上传 功能点测试、抓包分析 Burp Suite、Webshell 文件类型验证、权限控制
弱口令 爆破尝试、常见组合 Hydra、Burp Intruder 强密码策略、多因素认证
Shiro反序列化 扫描器检测、版本识别 专用EXP、内存马 版本升级、RASP
SQL注入 参数fuzz、延时测试 Sqlmap、手工注入 参数化查询、WAF
MongoDB未授权 端口扫描、空口令尝试 mongo客户端 启用认证、网络限制
任意文件读取 参数测试、路径遍历 curl、浏览器 路径校验、权限控制

6. 参考资源

  1. OWASP Top 10 安全风险指南
  2. Shiro官方安全公告
  3. MongoDB安全配置手册
  4. SQL注入防御最佳实践
  5. 文件上传安全白皮书
市级攻防演练实战教学文档 1. 演练概述 1.1 基本情况 时间 :8月中旬(护网结束后) 性质 :市级攻防演练 队伍组成 :4支队伍(初始2支,后增加2支) 目标分配 :每支队伍约90个目标 持续时间 :一周(周一抵达现场,周二正式开始,周五结束) 1.2 演练特点 直接提供目标URL,减少前期信息收集时间 中途规则变更:第一天允许内网攻击,第二天禁止内网攻击 主要攻击方式:外网渗透 2. 攻击技术实战案例 2.1 任意文件上传漏洞利用 案例1:旅游公司后台任意文件上传+FTP弱口令 通过弱口令直接进入后台 发现上传功能点(景区照片/宣传视频上传) Burp Suite抓包修改文件后缀上传一句话木马 配合FTP弱口令(通过爆破获得)进一步利用 案例2:OA系统任意文件上传 发现已被其他攻击者上传的Webshell 利用NC(Netcat)的文件上传漏洞 防御建议 : 实施严格的文件类型验证(白名单机制) 限制上传文件的可执行权限 定期检查上传目录中的异常文件 2.2 弱口令攻击 常见弱口令场景 : 后台管理系统弱口令(多案例) FTP服务弱口令(旅游公司案例) MongoDB未授权访问(空口令) 使用手机号、身份证号等作为弱密码 攻击方法 : 直接尝试常见弱口令组合 针对特定目标使用相关信息(如手机号)进行爆破 防御建议 : 强制使用复杂密码策略 实施多因素认证 设置登录失败锁定机制 定期审计账户密码强度 2.3 Shiro反序列化漏洞 攻击流程 : 使用扫描器发现Shiro反序列化漏洞 利用漏洞写入内存马 获取系统shell权限 防御建议 : 及时升级Shiro框架到最新安全版本 禁用危险的Java反序列化功能 实施运行时应用自我保护(RASP) 2.4 SQL注入攻击 案例1:投资公司延时注入 目录扫描发现潜在注入点 通过fuzz测试获取有效参数 确认延时注入漏洞存在 使用sqlmap自动化利用 案例2:学院前台SQL注入 前台直接存在SQL注入点 后台通过弱口令进入后发现数据库信息泄露 发现1521端口(Oracle)开放 防御建议 : 使用参数化查询或ORM框架 实施严格的输入验证 最小化数据库账户权限 定期进行代码安全审计 2.5 MongoDB未授权访问 攻击过程 : 通过FOFA搜索发现27017端口开放 尝试空口令连接成功 直接获取数据库访问权限 防御建议 : 启用MongoDB认证机制 限制绑定IP(不要绑定0.0.0.0) 设置防火墙规则限制访问来源 2.6 任意文件读取 攻击方法 : 发现文件包含漏洞 利用漏洞读取系统敏感文件 防御建议 : 限制文件访问路径(使用绝对路径) 实施严格的输入验证 最小化Web服务器权限 2.7 Kibana RCE尝试 攻击过程 : 发现Kibana服务 搜索历史RCE漏洞尝试利用 未成功利用(原因未说明) 防御建议 : 保持Kibana版本更新 限制Kibana管理界面访问 监控异常访问日志 3. 攻击流程与方法论 3.1 信息收集 使用工具 : FOFA:网络空间搜索引擎 鱼鹰:另一款网络空间搜索引擎(与FOFA互补) 扫描器:自动化漏洞扫描 技巧 : 不同搜索引擎交替使用会有不同收获 夜间批量扫描目标(利用非工作时间) 3.2 漏洞利用流程 快速筛选目标:排除门户网站等低价值目标 自动化扫描与手动验证结合 发现漏洞后立即深入利用 横向移动(受规则限制中途停止) 3.3 工具使用 Burp Suite :抓包改包、漏洞验证 Sqlmap :自动化SQL注入 NC(Netcat) :文件上传利用 Cobalt Strike :准备使用但因版本问题受阻 4. 经验总结与建议 4.1 红队经验 效率优先 :在目标众多时,快速筛选高价值目标 自动化利用 :合理使用扫描器提高效率 规则适应 :注意演练规则变化(如内网限制) 报告编写 :及时记录攻击过程和证据 4.2 防御建议 基础安全加固 : 消除弱口令 关闭不必要的服务端口 及时修补已知漏洞 监控与响应 : 实施7×24小时安全监控 建立应急响应流程 保留完整日志记录 安全意识 : 定期进行安全培训 建立安全开发生命周期(SDLC) 定期进行渗透测试和安全评估 5. 附录:攻击技术速查表 | 漏洞类型 | 检测方法 | 利用工具 | 防御措施 | |---------|---------|---------|---------| | 任意文件上传 | 功能点测试、抓包分析 | Burp Suite、Webshell | 文件类型验证、权限控制 | | 弱口令 | 爆破尝试、常见组合 | Hydra、Burp Intruder | 强密码策略、多因素认证 | | Shiro反序列化 | 扫描器检测、版本识别 | 专用EXP、内存马 | 版本升级、RASP | | SQL注入 | 参数fuzz、延时测试 | Sqlmap、手工注入 | 参数化查询、WAF | | MongoDB未授权 | 端口扫描、空口令尝试 | mongo客户端 | 启用认证、网络限制 | | 任意文件读取 | 参数测试、路径遍历 | curl、浏览器 | 路径校验、权限控制 | 6. 参考资源 OWASP Top 10 安全风险指南 Shiro官方安全公告 MongoDB安全配置手册 SQL注入防御最佳实践 文件上传安全白皮书