CVE-2019-0192:Apache Solr远程代码执行 - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

CVE-2019-0192:Apache Solr远程代码执行

ang010ela 漏洞 2019-03-29 10:00:27
147920
收藏

导语:研究人员发现开源企业搜索平台Apache Solr中存在远程代码执行漏洞,漏洞编号CVE-2019-0192。

安全研究人员Michael Stepankin发现了一个开源企业搜索平台Apache Solr中的漏洞:CVE-2019-0192。该漏洞是一个与不可靠数据的反序列化关键漏洞。为了更好的理解漏洞的工作院里,研究人员通过POC证明了潜在的漏洞利用和攻击。

黑客成功利用该漏洞可以在服务器应用环境下执行任意代码。比如,非认证的黑客可以利用该漏洞发送伪造的到Config API的HTTP请求,该API允许Apache Solr用户设置不同的Apache Solr元素。受影响的版本包括Solr 5.0.0到5.5.5和6.0.0到6.6.5。

Apache Solr

Apache Solr是一个基于Java库Apache Lucene的开源企业搜索平台,目前的市场占有率为35%,主要是跨国公司和机构在使用。

Apache Solr开源索引、查询和映射文档、站点和不同来源的数据,然后返回相关内容的推荐。支持文本搜索、hit highlighting(选中高亮显示)、和文档处理等功能,还支持JSON表示状态转移(REST)应用程序接口(API)。也就是说Apache Solr可以融入到其他系统和程序语言中,使用的端口为8983。

CVE-2019-0192

该漏洞是由于对到Config API的请求有限性验证不足引起的,Config API是Apache Solr用户用来配置solrconfig.xml文件的。该xml文件可以通过映射不同的请求和处理来控制Apache Solr的行为。solrconfig.xml中的参数定义了搜索请求和数据处理、管理和提取的方式。

Apache Solr是基于Java的,而Java允许对象序列化,也就是说可以将对象转化或表示为压缩的字节流。因此对象可以在网络间传输,然后Java虚拟机在接收字节流后可以反序列化使用。

Config API允许Solr的Java管理扩展(JMX)服务器通过HTTP POST请求进行配置。攻击者可以将JMX服务器指向一个恶意的远程方法调用(RMI)服务器,并利用该漏洞来触发Solr服务器上的运行代码执行。

CVE-2019-0192工作原理

攻击者可以运行命令来开启恶意的RMI服务器,如图1(上部)所示。含有JRMPListener类的ysoserial payload可以用来嵌入命令touch /tmp/pwn.txt,然后可以在有漏洞的Apache Solr上执行。图1(下部)中的POST请求可以发送给Solr来远程设置JMX服务器。

图1. 恶意RMI启动和POST请求发送

JMX可以使用远程客户端连接到JVM并监控运行在JVM中的应用。应用程序可以通过管理的beans(MBeans)的进行管理。开发者、程序员和Apache Solr用户都可以通过Java RMI在不同的协议之上访问MBeans。想在服务器上使用JMX/RMI接口的Apache Solr users可以对应地创建一个JMXService URL (service:jmx:rmi:///jndi/rmi://<target system>:<port>/jmxrmi)。

如图2所示,攻击者利用该漏洞可以使用POST请求,并通过使用set-property JSON对象的config API来设置JMXService URL (jmx.serviceUrl)。

如图3所示,会返回一个500错误,响应body中含有字符串undeclared checked exception; nested exception is。

图2. 表明JMXService远程设置的代码

图3. 出现错误500的代码

由于不适当的有效性验证,jmx.serviceUrl可以被指向攻击者控制的JMRP监听器,这会导致有漏洞的Apache Solr模拟到恶意JMRP监听器的RMI连接。并与恶意RMI服务器进行三次握手来建立到恶意RMI服务器的连接。

然后攻击者可以利用这种方式来在有漏洞的Apache Solr服务器上实现远程代码执行,如图4所示,攻击者可以发送一个恶意的伪造的序列化的对象。

 

图4. 利用CVE-2019-0192后的数据传输

如何解决?

Apache Solr建议用户尽快进行补丁修复或升级到7.0及之后版本。同时建议用户禁用或限制Config API。对运行Apache Solr的主机的异常流量进行配置和监控。

使用和管理Apache Solr的开发者、程序员和系统管理员应该使用安全设计原则,并实施最小权限原则来保护和应对该漏洞引发的威胁。

  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2024 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务