CVE-2022-33891 Apache Spark shell 命令注入漏洞

VSole2022-07-20 06:23:36

漏洞信息

近日监测到 Apache Spark 官方通报了一个命令注入漏洞 CVE-2022-33891:

Apache Spark 支持启动 ACL 来为 Web UI 访问提供身份验证,当 ACL 启动时可以通过构造特殊请求用户名导致 RCE ,漏洞影响版本:

  •  versions 3.0.3 and earlier
  •  versions 3.1.1 to 3.1.2
  •  and versions 3.2.0 to 3.2.1

漏洞分析

下载`spark-3.2.1-bin-hadoop2.7.tgz` ,并配置启动 ACL 和远程调试:

分析前先查看一下补丁:

对 `ShellBasedGroupsMappingProvider#getUnixGroups` 函数代码进行了修改。

查询官方文档可知,Apache Spark 启动 ACL 后, Web UI 的 HTTP 请求需要通过 `HttpSecurityFilter` 全局过滤器的鉴权处理,定位 `HttpSecurityFilter#doFilter` :

提取 GET 参数 `doAs` 赋值给 `effectiveUser` 变量,然后进入 `checkUIViewPermissions` 函数:

跟进 `isUserInACL` :

这里正好进入了补丁修复的 `ShellBasedGroupsMappingProvider#getUnixGroups` 函数:

跟进 `executeAndGetOutput` 函数:

直接将用户名拼接进入命令执行参数中,导致出现了 RCE 漏洞。

漏洞复现

利用反斜杠直接进行命令注入,结果如下:

修复方式

前面已经提到,新版本更新了 `ShellBasedGroupsMappingProvider` ,去掉了 `bash` 的直接调用,先后执行两次 `Process#start` ,最后执行语句变为:

apacheshell
本作品采用《CC 协议》,转载必须注明作者和本文链接
Apache Spark 支持启动 ACL 来为 Web UI 访问提供身份验证,当 ACL 启动时可以通过构造特殊请求用户名导致 RCE 。
当漏洞综合评估为风险严重、影响面较广、技术细节已披露,且被安全社区高度关注时,就将该漏洞列为必修安全漏洞候选清单。
记一次java代码审计
2021-09-16 15:10:38
就直接进行审计把。不说那么多,环境部署好了,开干。说一下我审计的前提准备。过滤器是一定要看的。当然才开始审计的时候可能会看的比较恼火,看不懂当我没说。涉及到一些函数处理的可以等到实际挖洞的时候再跟也行。涉及框架的,框架的漏洞涉及的组件要清楚,框架的配置文件再看看,就开冲。才开始代码审计,还是每个接口都看一下。
2022年04月12日,Apache官方发布了Apache Struts2的风险通告,漏洞编号为CVE-2021-31805,漏洞等级:高危,漏洞评分:8.5。Apache Struts 2是一个用于开发Java EE网络应用程序的开放源代码网页应用程序架构。它利用并延伸了Java Servlet API,
The Hacker News 网站披露,网络会议服务 Apache OpenMeetings 存在多个安全漏洞,Sonar 漏洞研究员 Stefan Schiller 表示网络攻击者可以利用这些漏洞夺取管理帐户的控制权,并在易受影响的服务器上执行恶意代码。
日前,JFrog的研究人员披露在Apache Cassandra数据库中发现高严重性安全漏洞,如果不加以解决,该漏洞可帮助恶意人员在受影响的计算设备上获得远程代码执行权限。
sqlmap --os-shell原理
2021-09-24 07:04:41
前言当数据库为MySQL,PostgreSQL或Microsoft SQL Server,并且当前用户有权限使用特定的函数。
F5 Networks在上周三发文称,他们自2017年7月以来一直在追踪利用Apache Struts 2远程代码执行(RCE)漏洞CNNVD-201703-152、CVE-2017-5638发起的恶意活动。在最初的活动中,攻击者主要利用这个漏洞来感染运行在Linux操作系统上的Struts框架,以挖掘以太币Electroneum (ETN)加密货币。
这里你可以理解为 a = 1,同时还可以 a =2、a = 3 ,不同的值都可以复制给同一个 变量 a 。Shell常见的变量之一系统变量,主要是用于对参数判断和命令返回值判断时使用,系统变量详解如下:。令或程序执行完后的状态,返回0表示执行成功;显示当前主机名;
VSole
网络安全专家