Apache Spark 命令注入漏洞

发布者:蔡瑞奎发布时间:2022-03-30浏览次数:266

第一章 安全通告
尊敬的客户:
近日,奇安信 CERT 监测到 Apache Spark 命令注入漏洞细节在互联网上流
传。当 Spark 任务的文件名可控时,`Utils.unpack` 采用命令拼接的形式对 tar  
文件进行解压,存在任意命令注入的风险。成功利用此漏洞可实现任意命令执
行。目前,此漏洞细节已在互联网上流传。鉴于此漏洞细节已公开,建议客户
尽快做好自查及防护。
奇安信 CERT 将持续关注该漏洞进展,并第一时间为您更新该漏洞信息。
第二章 漏洞信息
Apache Spark 是一种用于大数据工作负载的分布式开源处理系统。它使用
内存中缓存和优化的查询执行方式,可针对任何规模的数据进行快速分析查
询。它ᨀ供使用 JavaScalaPython R 语言的开发 API,支持跨多个工作
负载重用代码批处理、交互式查询、实时分析、机器学习和图形处理等。
近日,奇安信 CERT 监测到 Apache Spark 命令注入漏洞细节在互联网上流
传。当 Spark 任务的文件名可控时,`Utils.unpack` 采用命令拼接的形式对 tar  
文件进行解压,存在任意命令注入的风险。成功利用此漏洞可实现任意命令执
行。目前,此漏洞细节已在互联网上流传。鉴于此漏洞细节已公开,建议客户
尽快做好自查及防护。
漏洞名称:Apache Spark 命令注入漏洞
公开时间:2022-03-26
更新时间:2022-03-29
CVE 编号:暂无
其他编号:QVD-2022-1690
威胁类型:命令执行
技术类型:命令注入
厂商:Apache
产品:Spark
奇安信 CERT 风险评级:高危
风险等级:蓝色(一般事件)
术细节状态:已公开
漏洞描述:
Spark 任务的文件名可控时,`Utils.unpack`采用命令拼接的形
式对 tar 文件进行解压,存在任意命令注入的风险。这是源于
Hadoop unTar 函数存在问题,在其执行 shell 命令之前未正
确转义文件名,直接拼接命令导致任意命令注入。

影响版本:Spark Core 3.1.2, 3.2.1
不受影响版本:Spark Core 3.1.3, 3.2.2
其他受影响组件:
  若组件中引入了 Hadoop org.apache.hadoop.fs.FileUtil 类的 un
tar 方法且参数可控则会收到影响。
  奇安信 CERT 已成功复现 Apache Spark 命令注入漏洞,复现截图如下:





第三章 威胁评估
漏洞名称:Apache Spark 命令注入漏洞
CVE 编号:暂无
其他编号:QVD-2022-1690
CVSS 3.1 评级:高危
CVSS 3.1 分数:8.2

危害描述:
攻击者可利用该漏洞注入任意命令,导致命令执行。
第四章 处置建议
  目前,Apache Spark 官方已针对此漏洞ᨀ交修复补丁,请参照以下链接安
装补丁更新:
https://github.com/apache/spark/commit/057c051285ec32c665fb458d0670c1
c16ba536b2
https://github.com/apache/spark/tree/057c051285ec32c665fb458d0670c1c16
ba536b2