Apache Spark 未授权访问漏洞
Apache Spark是一款集群计算系统,其支持用户向管理节点提交应用,并分发给集群执行。如果管理节点未启动ACL(访问控制),我们将可以在集群中执行任意代码。
参考链接:
现实告诉我: 保持好奇心,享受孤独
Solr 是流行的、速度极快的开源企业搜索平台,它建立在 Apache Lucene(TM) 之上。
Apache Solr 5.0.0 到 Apache Solr 8.3.1 容易受到通过 VelocityResponseWriter 的远程代码执行的攻击。可以通过 configsetvelocity/
目录中的Velocity 模板或作为参数提供 Velocity 模板。用户定义的配置集可能包含可渲染的、潜在的恶意模板。默认情况下禁用参数提供的模板,但可以params.resource.loader.enabled
通过定义一个设置为 的响应编写器来启用true
。定义响应编写器需要配置 API 访问权限。Solr 8.4 完全移除了 params 资源加载器,并且仅在 configset 为trusted
(已由经过身份验证的用户上传)时启用 configset 提供的模板渲染。
参考:
Apache Solr 是一个开源搜索服务器。当 Apache Solr 不启用身份验证时,攻击者可以直接制造请求以启用特定配置,最终导致 SSRF 或任意文件读取。
参考:
环境启动后,浏览器http://192.168.44.132:8983
查看Apache Solr。
首先,访问http://192.168.44.132:8983/solr/admin/cores?indexInfo=false&wt=json
提取数据库名称:
![image-20220112151942073](Apache Solr RemoteStreaming 任意文件读取和 SSRF/image-20220112151942073.png)
发送如下请求,修改数据库配置demo
启用RemoteStreaming
:
1 | curl -i -s -k -X $'POST' \ |
![image-20220112152051635](Apache Solr RemoteStreaming 任意文件读取和 SSRF/image-20220112152051635.png)
然后通过stream.url
以下方式读取任意文件:
![image-20220112152404255](Apache Solr RemoteStreaming 任意文件读取和 SSRF/image-20220112152404255.png)
漏洞原理与分析可以参考:
Apache Solr 是一个开源的搜索服务器。Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。原理大致是文档通过Http利用XML加到一个搜索集合中。查询该集合也是通过 http收到一个XML/JSON响应来实现。此次7.1.0之前版本总共爆出两个漏洞:XML实体扩展漏洞(XXE)和远程命令执行漏洞(RCE),二者可以连接成利用链,编号均为CVE-2017-12629。
本环境测试RCE漏洞。
漏洞原理与分析可以参考:
Apache Solr 是一个开源的搜索服务器。Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。原理大致是文档通过Http利用XML加到一个搜索集合中。查询该集合也是通过 http收到一个XML/JSON响应来实现。此次7.1.0之前版本总共爆出两个漏洞:XML实体扩展漏洞(XXE)和远程命令执行漏洞(RCE),二者可以连接成利用链,编号均为CVE-2017-12629。
本环境仅测试XXE漏洞,RCE和利用链,可以在 https://github.com/vulhub/vulhub/tree/master/solr/CVE-2017-12629-RCE 中查看。