关键信息总结 漏洞概述 漏洞名称: jshERP Vulnerability Report 发现日期: 2020-06-30 受影响版本: v5.0.9 受影响API: /system/config/exportExcelByParam 漏洞细节 问题描述: 在jshERP项目中, 接口存在路径遍历和文件创建的问题。由于对 参数的合法性验证不足,攻击者可以构造任意路径生成文件或覆盖目标目录中的现有文件。 代码位置: 测试环境设置 1. JDK 8 2. Maven构建 3. MySQL数据库启动 4. MySQL数据库初始化: 执行SQL脚本 5. Redis启动: 6. 启动项目: 运行 复现步骤 1. 获取登录验证码 - 发送GET请求到 - 解析返回的JSON数据,提取 和 - 将 转换为图片并手动识别内容 2. 登录系统 - 使用默认用户名 和密码 (需加密) - 发送POST请求到 - 获取登录响应中的 3. 生成任意目录文件 - 发送POST请求到 - 构造 参数为 - 成功执行后,将在指定路径创建文件,证明路径遍历漏洞被成功利用 代码分析 关键代码: - 第705行接收外部输入参数 - 第102行调用 方法,传递 参数 - 第226行使用 创建文件,未对 进行验证 建议 对 参数进行严格验证,确保其合法性,防止路径遍历攻击。