记一次某系统的渗透测试
字数 999 2025-08-27 12:33:48
某摄像头管理系统渗透测试技术分析报告
1. 初始信息收集与访问
1.1 初始访问路径
- 通过Webpack+未授权访问接口获取另一系统权限
- 利用获取的口令进行横向移动,发现目标摄像头管理系统
1.2 系统初步分析
- 系统功能:摄像头管理平台
- 初步测试结果:
- 常见漏洞(文件上传、SQL注入)不存在
- 发现"备份还原"功能可能存在安全隐患
2. 备份功能安全分析
2.1 备份功能流程
- 用户输入:
- 登录密码
- 加密密码(可任意输入)
- 系统返回一个压缩包
2.2 压缩包结构分析
- backup
- data
- config.properties
- other_files...
2.3 加密机制分析
- 前端加密:
- 登录密码和加密密码在传输前经过加密
- 通过分析前端JS代码获取加密逻辑
- 后端处理:
- 使用加密后的密码解压备份文件
- 前端加密逻辑与后端不完全一致
3. 关键突破点发现
3.1 厂商信息泄露
- 在官网发现系统修复补丁包
- 补丁包包含:
- 部分后台代码(.class文件)
- 详细的安装路径信息
3.2 代码审计
- 全局搜索备份相关路由关键字
- 定位后端加密密码处理逻辑
- 发现系统引入的
ant.jar存在漏洞
4. 漏洞利用
4.1 漏洞详情
ant.jar版本存在目录穿越漏洞- 解压时未正确处理
../路径 - 可导致任意文件写入
- 解压时未正确处理
4.2 利用条件
- 已知web路径(从补丁包获取)
- 可构造特殊压缩包
4.3 利用步骤
- 构造恶意压缩包:
- 包含路径:
opt/[web路径]/webshell.jsp - 使用
../实现目录穿越
- 包含路径:
- 使用加密后的密码加密压缩包
- 通过备份还原功能上传
4.4 构造难点解决
- 普通压缩工具无法同时满足:
- 构造
../路径 - 提供加密功能
- 构造
- 最终解决方案:
- 使用国产数字压缩软件成功构造
5. 技术总结
5.1 漏洞链
信息泄露(补丁包) → 代码审计 → 发现依赖漏洞 → 构造恶意压缩包 → 目录穿越 → getshell
5.2 安全建议
- 对厂商:
- 加强补丁包管理,避免公开敏感信息
- 更新存在漏洞的依赖库
- 实现前后端加密逻辑一致性验证
- 对防御方:
- 监控依赖库漏洞
- 限制压缩包解压路径
- 实施严格的输入验证
5.3 渗透技巧
- 横向思维:从补丁包获取关键信息
- 工具选择:特定场景下国产工具可能更适用
- 漏洞组合:将信息泄露与依赖漏洞结合利用
附录:技术细节备忘
-
加密密码处理流程:
- 前端加密 → 传输 → 后端二次处理 → 用于解压
-
目录穿越利用要点:
- 精确计算目标路径层级
- 确保压缩包加密方式与系统要求一致
-
应急响应建议:
- 检查
ant.jar版本 - 审计备份还原功能日志
- 排查web目录下可疑文件
- 检查