ActiveMQ任意文件写入漏洞(版本在5.12.X前CVE-2016-3088)

查看docker的activemq版本命令:
$ docker ps | grep activemq
927860512db9 rmohr/activemq:5.15.4-alpine
从上面可以看到版本是activemq:5.15.4-alpine 在该漏洞修复版本之上,不用担心了。

-------------------------
使用 docker 复现该漏洞,搭建环境
vulhub/activemq at master · vulhub/vulhub · GitHub
环境会监听 61616 端口和 8161端口,8161端口是控制台。
搭建好以后,本机访问 http://192.168.0.106:8161 即可。

ActiveMQ 的控制台分为三个应用:
admin
api
fileserver
其中1和2需要登录,3不需要登录,fileserver 是一个RESTful API的接口,可以使用 PUT、MOVE 等方法操作文件。

版本相关:
5.12.X —— 5.13.X 版本中,默认关闭了 fileserver
5.14.0 以后的版本,删除了 fileserver
0x02、漏洞相关

2.1 漏洞原因
漏洞成因是 fileserver ,可以使用 PUT、MOVE 等方法对文件进行操作,主要可以搞的方法有以下几点:
直接写 shell。
写 cron 定时任务拿 shell,或者写ssh key 文件
写 jar 或 jetty.xml 等库和配置文件

2.2 直接写 shell
写 shell 的话,需要写在 admin 或者 api 中,也就是需要登录,没有密码的话完成不了写 shell 操作。
该环境默认的口令为 admin/admin。
访问 http://127.0.0.1:8161/admin/test/systemProperties.jsp

获得当前系统的路径
上传jsp,返回204,但是在 fileserver 路径下不解析
然后移动到 api 目录下,成功的话,返回 204 No Content
成功执行 webshell

2.3 利用 cron 定时任务写 shell
先上传到 fileserver,不需要登录即可。
然后移动到 /etc/cron.d/root
保证靶机的定时任务服务正在运行
/etc/init.d/cron status
本机监听 9999 端口,一会就反弹 shell 了。

能够写shell基本上就等于控制了服务器了,通过这个漏洞学习可以看到对服务器文件相关操作的应用接口都要相当谨慎。

ActiveMQ任意文件写入漏洞(版本在5.12.X前CVE-2016-3088)的更多相关文章

  1. Apache ActiveMQ任意文件写入漏洞(CVE-2016-3088)复现

    Apache ActiveMQ任意文件写入漏洞(CVE-2016-3088)复现 一.漏洞描述 该漏洞出现在fileserver应用中,漏洞原理:ActiveMQ中的fileserver服务允许用户通 ...

  2. ActiveMQ任意文件写入漏洞(CVE-2016-3088)

    上传webshell 容器用vulhub的 PUT一个jsp文件 MOVE到api目录 默认的ActiveMQ账号密码均为admin,首先访问http://your-ip:8161/admin/tes ...

  3. 漏洞复现-ActiveMq任意文件写入漏洞(CVE-2016-3088)

          0x00 实验环境 攻击机:Win 10 靶机也可作为攻击机:Ubuntu18 (docker搭建的vulhub靶场) 0x01 影响版本 未禁用PUT.MOVE等高危方法的ActiveM ...

  4. ActiveMQ反序列化(CVE-2015-5254) && ActiveMQ任意文件写入 (CVE-2016-3088)

    ActiveMQ 反序列化漏洞(CVE-2015-5254) 漏洞详情 ActiveMQ启动后,将监听61616和8161两个端口,其中消息在61616这个端口进行传递,使用ActiveMQ这个中间件 ...

  5. 致远A8任意文件写入漏洞_getshell_exp

    近期爆出致远 OA 系统的一些版本存在任意文件写入漏洞,远程攻击者在无需登录的情况下可通过向 URL /seeyon/htmlofficeservlet POST 精心构造的数据即可向目标服务器写入任 ...

  6. Aria2任意文件写入漏洞

    目录: 简介 漏洞描述 payload 漏洞复现 一.Aria2介绍 Aria2是一个命令行下运行,多协议,多来源下载工具(HTTP / HTTPS,FTP,BitTorrent,Metalink), ...

  7. 74CMS 3.0任意文件写入漏洞

    一. 启动环境 1.双击运行桌面phpstudy.exe软件 2.点击启动按钮,启动服务器环境 二.代码审计 1.双击启动桌面Seay源代码审计系统软件 2.因为74CMS3.0源代码编辑使用GBK编 ...

  8. 企业安全04-phpstudy最新版本nginx 默认存在任意文件解析漏洞

    phpstudy最新版本nginx 默认存在任意文件解析漏洞 一.漏洞描述 phpStudy是一个PHP调试环境的程序集成包.该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ ...

  9. JeeCMS v7 SSRF导致任意文件写入

    前言: 学习大佬的思路. from先知社区:https://xz.aliyun.com/t/4809 00X1: 是/ueditor/getRemoteImage.jspx 接口 通过构造upfile ...

随机推荐

  1. ntpdata 同步时间

    ntpdate用来同步时间 [root@localhost ~]# yum install -y ntp [root@localhost ~]# ntpdate time.windows.com # ...

  2. centos7 管理开机启动:systemd

    一.CentOS7 systemd 介绍 在 CentOS7 中,使用 systemd 来管理其他服务是否开机启动,systemctl 是 systemd 服务的命令行工具 [root@mysql ~ ...

  3. 20190223 Hadoop生态圈,关于大数据

    周六参加了一场,大数据基础培训,讲得比较详细.培训的讲师对于互联网行业职位萎缩也有相对的解释,也还介绍了新的职位的诞生. 以前对于大数据的理解,就是超大的数据量,但对大数据开发不甚了解. 大数据平台的 ...

  4. awk命令分析日志的简单笔记

    awk是一个文本分析工具,可以用来进行流量日志分析 之前无意中看到了这个命令,简单记一下笔记 ,在打线下的时候可能会有用 awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gaw ...

  5. Linux下fork机制详解(以PHP为例)

    考:https://blog.csdn.net/jason314/article/details/5640969 1.fork简介 一个进程,包括代码.数据和分配给进程的资源.fork()函数通过系统 ...

  6. CentOS6.5安装sqoop2

    1.下载软件:http://archive.cloudera.com/cdh5/cdh/5/ 2.解压:tar -zxvf mysofts/sqoop2-1.99.5-cdh5.6.0.tar.gz ...

  7. MVC 下 JsonResult 的使用方法(JsonRequestBehavior.AllowGet)

    MVC 默认 Request 方式为 Post. actionpublic JsonResult GetPersonInfo(){var person = new{Name = "张三&qu ...

  8. MyBatis基础入门《十》添加数据

    MyBatis基础入门<十>添加数据 描述: 修改了实体类:TblClient.java,将其字段:cbirthday 由String类型改成了Date类型. TblClient.java ...

  9. laravel service provider

    https://laravel-china.org/articles/6189/laravel-service-provider-detailed-concept https://oomusou.io ...

  10. python爬取12306及各参数的使用。完整代码

    import requestsfrom retrying import retryreuquests和retrying的下载及安装可以通过命令行pip install 口令实现 # 调用重连装饰器固定 ...