0x01 概述
Apache Commons Compress 是一个 Java 库,旨在提供用于压缩和解压缩各种压缩格式的功能。它是 Apache 软件基金会的一个项目,为 Java 开发人员提供了处理压缩文件和流的通用接口和工具。
笔者通过对数百个真实项目引入组件的分析选出了Commons Compress组件的常见漏洞进行分析。本次分析的是CVE-2021-35515,Commons Compress对7z压缩文件解压时造成的无限循环漏洞。
0x02 组件使用场景
Apache Commons Compress 是一个功能强大的 Java 库,专注于处理多种压缩格式,包括 ZIP、Tar、GZIP、BZIP2、XZ 等,适用于文件压缩、解压缩、数据存档、网络通信等多个场景。无论是创建自定义的压缩工具、优化数据传输速度,还是在有限存储空间下进行资源压缩,该库提供了一致的 API 和工具,方便开发人员处理不同压缩格式的需求,从而节省存储空间、提高效率,并简化数据处理过程。
0x03 漏洞信息
3.1 漏洞简介
漏洞名称:拒绝服务漏洞
漏洞编号:CVE-2021-35515
漏洞类型:CWE-835 无限循环
CVSS评分:CVSS v3.1:7.5
漏洞危害等级:高危
3.2 漏洞概述
当读取一个特别精心构造的7Z压缩文件时,解压缩条目的编解码器列表的构建可能会导致无限循环<