CVE-2025-69820CVE-2025-69820是Beam beta9 v.0.1.521版本中的一个中等严重性目录遍历漏洞。该漏洞存在于joinCleanPath函数中,攻击者可以利用此漏洞绕过安全检查,访问应用程序目录之外的文件系统资源,从而获取敏感信息。Beam beta9是一个基于云的容器编排和函数即服务(FaaS)平台,广泛应用于机器学习模型部署和Serverless计算场景。该漏洞的CVSS评分为6.0,属于中等严重级别,对机密性造成高影响。由于攻击向量为本地(AV:L),需要攻击者具有高权限(PR:H),但无需用户交互(UI:N),这使得该漏洞在特定场景下具有实际利用价值。攻击者通过构造特殊的路径字符串,利用joinCleanPath函数在路径规范化过程中的缺陷,可以读取服务器上的配置文件、密钥、凭证等敏感数据。该漏洞的发现和披露时间在2026年1月22日,漏洞代码位于Beam Cloud的GitHub仓库中的multipart.go文件第45行附近。
该目录遍历漏洞的根本原因在于joinCleanPath函数在处理文件路径时未能正确验证和清理用户输入的路径参数。在Beam beta9的pkg/abstractions/volume/multipart.go文件中,joinCleanPath函数负责拼接和规范化文件路径,但由于缺少充分的路径遍历防护机制,攻击者可以通过使用路径遍历序列(如../)来绕过安全限制。具体来说,当函数接收到包含../的路径时,虽然会进行一定程度的清理,但在特定条件下未能阻止攻击者访问应用程序工作目录之外的文件。例如,攻击者可以通过构造类似../../../../etc/passwd的路径来读取系统敏感文件。该漏洞的技术实现涉及到Go语言中filepath.Clean和filepath.Join函数的行为差异。filepath.Join会在路径开头添加当前目录前缀,而filepath.Clean会尝试规范化路径,但两者的组合使用可能产生意外的安全问题。攻击者利用这一点,可以在文件上传、下载或访问操作中注入恶意路径,从而实现未授权的文件系统访问。漏洞的利用需要攻击者具备本地访问权限和高权限账户,这在多租户云环境中尤其危险,因为攻击者可能访问其他用户的共享资源。