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

漏洞原理

fileserver是Apache ActiveM提供的一个RESTful API接口,可通过GET、PUT、DELETE等HTTP请求对文件进行读写操作,设计目的是为了弥补消息队列操作不能传输、存储二进制文件的缺陷,在文件操作过程中出现了任意文件读写漏洞。

影响版本

5.12.x之前的版本。

复现环境

将ActiveMQ部署在MAC上,使用版本为apache-activemq-5.11.1,JDK版本为1.7

复现过程

启动ActiveMQ,并尝试上传jsp木马,返回401,上传时失败。。。

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

把文件名后缀改为txt,再上传,返回204,上传成功(网上有些文章直接上传jsp也能传上去,我这里是传不上去的,原因不明。。。)

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

在apache-activemq-5.11.1/webapps/fileserver文件夹下可以找到刚才上传的文件:

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

此时的jsp木马是无法执行的,原因有二:1.文件名后缀是txt,2.fileserver目录无法执行jsp。所以需要将该文件后缀改为jsp,然后移动到可以执行jsp的文件夹内。

查看activemq的绝对路径:http://IP:8161/admin/test/systemProperties.jsp,将木马传到webapps/api下面:

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

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

访问上传的木马,执行ls命令成功:

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

相关推荐