CVE-2026-22870GuardDog是一款由DataDog开发的命令行工具,用于识别恶意的PyPI包。该工具在2.7.1之前的版本中存在一个严重的安全漏洞,其safe_extract()函数在提取ZIP归档文件(如Python wheel和egg包)时,未对解压后的文件大小进行验证。攻击者可以利用这一缺陷制作恶意的ZIP压缩包(又称zip bomb或 decompression bomb),当受害者在使用GuardDog扫描该恶意包时,少量压缩数据(几MB)会被解压成巨大的文件(可达数GB),导致磁盘空间被迅速耗尽,从而造成系统拒绝服务(DoS)。由于GuardDog通常被集成到自动化安全检测流程中,此漏洞可能影响持续集成/持续部署(CI/CD)管道和包管理系统的安全扫描环节。
该漏洞源于GuardDog的safe_extract()函数缺少对解压后文件大小的边界检查。ZIP格式允许在压缩时设置非常高的压缩比,攻击者可以创建一个包含少量实际数据但声明巨大解压大小的ZIP文件。当safe_extract()执行解压操作时,它会按照ZIP文件头中声明的大小分配内存和磁盘空间,而无需验证实际解压结果是否合理。例如,一个42KB的压缩文件可以解压出约4.5GB的数据。攻击者只需诱使目标用户使用GuardDog扫描包含恶意ZIP包的PyPI包,即可触发拒绝服务攻击。攻击成功的前提条件是目标系统使用存在漏洞的GuardDog版本(< 2.7.1)来扫描或安装来自不可信源的Python包。