关键漏洞信息 漏洞概述 漏洞类型: 路径遍历漏洞 (Path Traversal) 发现日期: 2022年6月18日 受影响版本: 2.0 受影响API: 代码位置: 漏洞细节 在 项目中, API 的 参数被用作上传文件的存储目录和 。然而, 参数未进行合法性验证,导致可以将图像上传到任意路径,并且 可以被设置为任意目录。 测试环境设置 1. JDK 8 2. Maven构建 3. MySQL数据库启动 4. 数据库初始化 5. 通过IDEA运行Tomcat服务器并附加调试器到部署 复现步骤 1. 登录管理员 - 使用默认用户名 和密码 登录。 - 成功登录后,获取 。 2. 上传文件到任意目录 - 使用特定的POST请求上传文件,通过修改 参数控制文件上传位置和创建的目录。 - 示例命令展示了如何利用漏洞将图像上传到构造的路径,并将 设置为指定目录,成功绕过代码中的安全限制。 代码分析 在 类的 方法中,关键输入参数 未进行充分验证。 用于拼接图像存储目录 ,最终写入图像到 。 还用于拼接 路径并传递给 函数。 因此,上传图像的存储路径和生成的文件路径都可以通过参数控制,导致路径遍历漏洞。 相关漏洞 类似问题也在其他API中发现,如 ,触发命令如下: