CVE-2026-34591Poetry是Python的依赖管理工具。在1.4.0至2.3.3之前的版本中,存在一个安全漏洞。攻击者可以构建包含特殊路径(如../)的恶意wheel包。当用户使用Poetry安装该包时,Poetry未对路径进行安全检查,导致将文件写入磁盘的任意位置。这可能覆盖系统关键文件或植入恶意文件,造成完整性破坏。该问题已在2.3.3版本中修复。
该漏洞源于Poetry在处理wheel包安装时的路径解析逻辑缺陷。Wheel文件本质上是ZIP归档,其中包含Python代码和元数据。漏洞利用点在于,攻击者可以在wheel归档文件名中嵌入目录遍历序列(例如 `../../etc/passwd`)。在受影响版本中,Poetry在解压和写入文件时,没有验证最终路径是否仍然位于预期的安装目录(即沙箱)内。因此,当受害者执行 `poetry add` 或 `poetry install` 命令安装恶意包时,Poetry进程(通常以用户权限运行)会将攻击者指定的文件写入到文件系统的任意位置。虽然仅安装通常不足以直接执行代码(需要导入或调用),但通过覆盖现有的库文件、配置文件或利用特定的加载机制,攻击者可能进一步实现代码执行。