CVE-2026-32711pydicom是一个用于处理DICOM文件的纯Python包。在2.0.0-rc.1至3.0.1版本中,存在路径遍历漏洞。攻击者可通过恶意构造DICOMDIR文件中的ReferencedFileID字段,将其设置为文件集根目录之外的路径。由于pydicom仅检查路径是否存在而未验证其合法性,导致后续的文件操作(如复制、写入、删除)可对任意文件进行操作,从而造成敏感信息泄露或数据破坏。
该漏洞的根源在于pydicom处理DICOMDIR文件中ReferencedFileID字段时的校验逻辑缺陷。当程序解析该字段时,虽然会解析路径并确认目标文件是否存在,但并未严格校验解析后的绝对路径是否仍位于预期的File-set root目录下。攻击者可以利用“../”序列在ReferencedFileID中进行目录穿越。当应用程序后续调用FileSet类的公共方法(如copy()、write()或remove()与write()的组合)时,会直接使用此前未被拦截的路径进行底层文件I/O。这使得攻击者能够诱导应用程序读取、复制或移除受影响系统上的任意文件,绕过了目录访问限制。