cyberstrikelab—Diamond
字数 1858 2025-08-29 08:30:30
CyberStrikeLab-Diamond 渗透测试教学文档
1. 目标系统初步探测
1.1 系统识别
- 目标系统运行Jspxcms内容管理系统
- 前台功能:注册和登录功能可用
- 已禁用功能:修改头像的上传功能被删除
1.2 弱口令利用
- 发现后台管理弱口令:
admin::cslab - 成功登录后台管理界面
2. 文件上传漏洞利用
2.1 漏洞背景
- 后台管理界面存在文件管理模块,提供上传ZIP包功能
- Tomcat服务器默认配置会自动解压webapps/目录下的WAR文件
2.2 攻击步骤
2.2.1 准备恶意WAR文件
- 使用哥斯拉生成
shell.jsp后门文件 - 由于存在360和Defender防护,使用哥斯拉特战版进行混淆
- 可选的免杀工具:XG拟态、弱鸡webshell免杀工具
- 创建包含恶意JSP代码的WAR文件(如
shell.war)
2.2.2 构造路径穿越ZIP包
- 编写Python脚本生成带路径穿越特性的ZIP包
- 目的是让解压过程将文件放置在目标目录之外的位置(如webapps/目录)
2.2.3 上传并触发
- 通过文件上传接口上传构造的ZIP包(如
malicious.zip) - 确保上传路径指向webapps/目录或其子目录
- 等待Tomcat自动解压部署
2.2.4 访问后门
- 通过URL访问部署的恶意JSP文件
- 获取初步系统权限
3. 权限提升
3.1 环境分析
- 当前权限较低
- 存在安全软件:360和Defender
- 360开启时Defender通常不起作用
3.2 提权方法
- 使用掩日通用免杀技术(若有Defender则需分离免杀)
- 使用烂土豆(Rotten Potato)提权
- 成功后:
- 开启3389远程桌面
- 创建后门用户
- 关闭所有安全软件(360和Defender)
4. 内网横向移动
4.1 第一层内网
- 发现开放1521端口(Oracle数据库)
- 在C盘发现user文件
- 成功连接Oracle数据库
4.2 第二台机器攻击
- 当前权限:cslab用户具有DBA权限
- 尝试使用odat添加用户失败
- 使用mdut连接Oracle:
- 初始化功能后可执行部分命令
- 直接通过命令开启3389并添加用户成功
- 使用Stowaway搭建第一层代理
4.3 第三台机器攻击
- 发现服务:
- 10.0.0.56:80 - o2OA系统
- 10.0.0.56:20051 - H2database管理界面
4.3.1 O2OA攻击
4.3.2 提权操作
- 尝试多种土豆提权方法失败
- 最终通过CS上线成功提权
- 开启3389并添加后门用户
4.4 第四台靶机攻击
- 发现Nacos 2.3.2服务
- 使用nacos_derby_rce漏洞攻击
4.4.1 攻击准备
- 使用Stowaway进行端口转发:
- 将10.5.0.23的8848端口转发到本地8877端口
- 确认Nacos存在漏洞:
- Derby SQL注入
- 默认认证禁用
4.4.2 攻击实施
- 使用第三方EXP:nacos_derby_rce
- 参考文档:攻击详情
- 攻击步骤:
- 配置config.py中的IP和端口
- 执行service.py启动恶意jar包下载服务
- 执行exploit.py输入地址和命令
- 注意:命令执行可能有延迟(约15分钟)
4.4.3 最终控制
- 直接开启3389并添加后门用户
- 获取系统完全控制权限
5. 关键工具和技术总结
5.1 使用工具
- 哥斯拉(Godzilla) - WebShell生成
- 掩日/XG拟态/弱鸡webshell免杀工具 - 绕过杀软
- 烂土豆(Rotten Potato) - Windows提权
- Stowaway - 多层代理搭建
- odat/mdut - Oracle数据库攻击
- nacos_derby_rce - Nacos漏洞利用
5.2 关键技术点
- 路径穿越ZIP包构造
- Tomcat WAR文件自动部署利用
- 多层内网代理搭建
- 多种数据库(Oracle/H2/Derby)攻击方法
- 复杂环境下的免杀技术