CVE-2026-31214ml-engineering项目中的torch-checkpoint-shrink.py脚本存在严重的不安全反序列化漏洞。由于该脚本在处理PyTorch检查点文件时,使用torch.load()函数未启用安全参数weights_only=True,导致攻击者可诱导系统加载特制的恶意文件。利用pickle模块的不安全特性,攻击者可在反序列化过程中执行任意Python代码,从而在无需用户交互的情况下完全控制系统。
该漏洞位于ml-engineering项目的torch-checkpoint-shrink.py脚本中,属于典型的不安全反序列化漏洞(CWE-502)。脚本的核心问题在于使用了PyTorch的torch.load()函数来处理模型检查点文件,但未启用至关重要的安全参数weights_only=True。在默认配置下,torch.load()内部使用Python的pickle模块来恢复对象。Pickle模块在反序列化过程中具有危险性,因为它允许通过定义对象的__reduce__方法来执行任意Python代码。由于该脚本缺乏对输入文件的严格验证,攻击者可以构建一个包含恶意Payload的.pt文件。当受害者运行脚本并加载此恶意文件时,pickle反序列化过程会自动解析并执行其中的恶意指令。攻击者无需认证即可利用此漏洞,在运行脚本的上下文中实现远程任意代码执行,从而完全控制受害主机,造成数据泄露、篡改或服务中断。