CVE-2026-45224Crabbox 0.9.0之前的版本中存在严重的路径遍历漏洞。该漏洞源于Islo provider对工作区路径的解析机制未进行有效验证。攻击者可以精心构造包含遍历序列(如../)的恶意配置文件(.crabbox.yaml),从而绕过预期的/workspace目录限制。当系统启用sync.delete功能时,会在解析后的路径上执行rm -rf和mkdir -p操作,导致任意文件被删除或覆盖,严重威胁系统完整性和可用性。
该漏洞的核心在于Crabbox处理Islo provider工作区路径时的逻辑缺陷。在初始化阶段,应用程序会读取并解析.crabbox.yaml或crabbox.yaml配置文件以确定工作区位置。然而,代码未对用户提供的路径进行规范化处理或严格的边界检查,导致攻击者能够输入绝对路径或包含“../”的相对路径。这些恶意路径经过解析后,会指向系统预期的/workspace目录之外。当配置项sync.delete被启用时,系统会尝试清理并重新创建工作区,具体执行操作包括rm -rf <resolved_path>和mkdir -p <resolved_path>。由于resolved_path完全受攻击者控制,且命令以高权限运行,攻击者可利用rm -rf删除系统上的任意文件或目录,或利用mkdir -p破坏文件系统结构,造成数据丢失或拒绝服务。