针对危险的Apache Solr远程代码执行缺陷发布的攻击代码
混乱仍然围绕着一个安全缺陷,ApacheSolr团队在夏季打补丁,事实证明它比任何人想象的更加危险。
ApacheSolr是基于Java的开源搜索引擎,最初开发为将搜索功能添加到CNET网站。
该项目于2006年捐赠给ApacheSoftwareFoundation,因为它的速度和扩展功能集,从那里获得了全世界的使用。
整个夏天,一个名为“jnyryan”的用户向Solr项目报告说,包含在所有新Solr实例中的默认solr.in.sh配置文件包含一个不安全选项。
设置为Enable_Remote_JMX_opts选项的默认配置将端口8983暴露给远程连接。
据报道,ApacheSolr团队没有看到这个问题是一项巨大的交易,开发人员认为攻击者只能访问(无用的)SolrMonitoring数据,而且没有其他任何东西。
10月30日,一个用户发表了关于github的概念验证代码,显示攻击者如何滥用相同的"远程代码执行"(rCE)攻击。概念验证代码使用了暴露的8983端口,以支持SOLR服务器上的Apache速度模板,然后使用此第二功能来上载和运行恶意代码。
第二个更完善的概念验证代码在两天后在线发布,使得攻击更容易执行。
只有在发布了这个代码之后,Solr团队才意识到这个错误是多么危险。11月15日,他们发布了一份最新的安保咨询意见。在更新的警报中,Solr团队建议Solr管理员将solr.in.sh配置文件中的enable_remote_jmx_opts选项设置在每个SOLR节点上的"错误"上,然后重新启动Solr。
他们还建议用户将Solr服务器保持在防火墙后面,因为这些系统从来没有被设计为在互联网上暴露,而只是部分关闭和严密监视的内部网络。
Solr团队表示,只有在Linux上运行的SOLR版本受到影响。
然而,对于哪些版本会受到影响,仍然存在一些谜。Solr团队在其安全咨询中表示,只有v8.1.1和v8.2.0是易受攻击的,但在上周的一篇博客文章中,Table研究小组表示,影响要大得多,所有Solr版本的漏洞都会受到影响,从最新版本V7.7.2到V8.3。
好消息是,在写作时,在野外没有发现任何攻击。然而,这只是时间问题。
ApacheSolr实例通常具有对大量计算资源的访问,并且从历史上来说,在目标被恶意软件帮派攻击之后是高度寻求的。
例如,CVE-2017-12629和CVE-2019-0193在细节和利用代码成为公共之后数周内被黑客攻击。在这两种情况下,攻击者都使用了两个漏洞,在未修补的服务器上获取SOLR服务器和工厂密码挖掘恶意软件的访问权限。
由于我们已经知道这个新的SolrBug可能导致远程代码执行,并且我们有现成的公共漏洞代码,所以专家们期望在几天或几周内,这种安全缺陷会出现在主动攻击之下。