99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

物聯(lián)網(wǎng)安全從零開始-BIG-IP CVE漏洞分析

蛇矛實驗室 ? 來源:蛇矛實驗室 ? 作者:蛇矛實驗室 ? 2022-12-05 11:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本環(huán)境是蛇矛實驗室基于"火天網(wǎng)演攻防演訓靶場"進行搭建,通過火天網(wǎng)演中的環(huán)境構建模塊,可以靈活的對目標網(wǎng)絡進行設計和配置,并且可以快速進行場景搭建和復現(xiàn)驗證工作?;鹛炀W(wǎng)演中,內置大量固件設備,包含大型網(wǎng)絡設備及物聯(lián)網(wǎng)設備,可以靈活選取進行測試驗證。

背景

2022年11月16日,F(xiàn)5官方公布了F5 BIG-IP和BIG-IQ設備中的多個安全漏洞。其中高危漏洞(CVE-2022-41622,CVSS評分8.8)是iControl SOAP跨站點請求偽造,可允許未經(jīng)身份驗證的遠程代碼執(zhí)行攻擊。高危漏洞(CVE-2022-41800,CVSS評分8.7)為iControl REST遠程代碼執(zhí)行漏洞,允許經(jīng)過身份驗證的管理員用戶通過RPM注入執(zhí)行任意代碼。

c1e4e028-723a-11ed-8abf-dac502259ad0.png

受CVE-2022-41622影響的版本為:

BIG-IP:17.0.0
BIG-IP:16.1.0-16.1.3
BIG-IP:15.1.0-15.1.8
BIG-IP:14.1.0-14.1.5
BIG-IP:13.1.0-13.1.5
BIG-IQ:8.0.0-8.2.0
BIG-IQ:7.1.0

受CVE-2022-41800影響的版本為:

BIG-IP:17.0.0
BIG-IP:16.1.0-16.1.3
BIG-IP:15.1.0-15.1.8
BIG-IP:14.1.0-14.1.5
BIG-IP:13.1.0-13.1.5

BIG-IP 設備默認有倆個用戶(終端用戶和web用戶),在配置設備信息時由于系統(tǒng)對web端用戶的密碼沒有什么嚴格要求(如必須數(shù)字、字母組合、特殊符號等等),可能會導致攻擊者可以爆破出web端用戶密碼,加上今年5月剛爆出的CVE-2022-1388未授權繞過漏洞幾乎為同型號設備,這就使得倆個web用戶導致的pre-auth漏洞很容易被利用。

環(huán)境搭建

本小節(jié)使用的漏洞環(huán)境固件為BIG-IP,漏洞版本號為16.1.0。在靶場中調用BIG-IP后,BIG-IP會自動分配出mgmt口的IP地址。

c272b754-723a-11ed-8abf-dac502259ad0.png

在瀏覽器端使用(admin/admin)登錄后,如下圖所示:

c28870a8-723a-11ed-8abf-dac502259ad0.png

漏洞分析

BIG-IP的管理模式有多種,包括web頁面,tmsh命令行,rest api,以及soap api。soap api數(shù)據(jù)交換格式為soap/xml。rest api數(shù)據(jù)交換格式使用http/json。soap api為比較舊的技術,在版本11.6中已經(jīng)放棄維護,目前支持正常使用,rest api目前官方一直在推薦用戶使用和開發(fā)。cve-2022-41622為csrf漏洞,漏洞本身危害不大,但是由于在漏洞利用過程中可以使用soap api接口進行操作從而rce。cve-2022-41800為iControl rest容易受到rpm注入攻擊導致rce。

明白了漏洞利用的方法,下面我們開始分析。進入BIG-IP終端,BIG-IP默認開啟ssh服務,我們可以使用"scp -r root@ip:/* ./"命令將BIG-IP的所有文件拷貝到本地進行分析。BIG-IP中程序運行的httpd服務為apache

c32e98ac-723a-11ed-8abf-dac502259ad0.png

CVE-2022-41800

我們在"etc"目錄簡單查看一下,在"init.d"目錄下發(fā)現(xiàn)了httpd啟動服務的httpd腳本,腳本注明為apache server并且配置文件的位置為"/etc/httpd/conf/httpd.conf"。

c34a5fd8-723a-11ed-8abf-dac502259ad0.png

查看一下配置文件,我們發(fā)現(xiàn)httpd接受請求,并將請求轉發(fā)到不同端口的服務上完成對應的處理。下圖中AuthPAM開啟,說明調用了httpd的某個".so" 文件進行預先的認證,并且將所有向 /mgmt 發(fā)送的請求都轉發(fā)到了 "http://localhost:8100/mgmt/"。

c377ff6a-723a-11ed-8abf-dac502259ad0.png

在16.1.0的官方文檔中,簡單翻閱我們得知所有REST API的uri中都是含有 "mgmt" 的。

c3e607d0-723a-11ed-8abf-dac502259ad0.png

查看一下8100端口的服務,發(fā)現(xiàn)有java服務在監(jiān)聽

c41158ea-723a-11ed-8abf-dac502259ad0.png

查看一下pid信息,發(fā)現(xiàn)java的"-classpath"參數(shù)后為"usr/share/java/rest"和"usr/share/java/rest/libs"目錄下的所有jar包,且"--port"參數(shù)為8100。

c43d0756-723a-11ed-8abf-dac502259ad0.png

如果要動態(tài)調試java程序,我們可以修改"etc/bigstart/scripts/restjavad",在jvm_options后附加"-agentlib:jdwp=transport=dt_socket,address=1043,server=y,suspend=n"選項,并且使用Idea配置好ip、port后進行遠程調試。

注意:防火墻默認策略為禁止,動態(tài)調試需要放行調試端口

c483d960-723a-11ed-8abf-dac502259ad0.png

RestServerServlet 是整個 iControle REST 的入口,在其"service"方法中"RestServerServlet" 異步執(zhí)行,注冊了一個 "ReadListener"。而且會在處理請求時,為每一個請求創(chuàng)建了一個 "RestOperation",并且后續(xù)處理將以回調的方式執(zhí)行。

c4bc0e02-723a-11ed-8abf-dac502259ad0.png

這里會檢測請求中是否包含相關認證,并將其設置到 "RestOperation" 中。

c4dad210-723a-11ed-8abf-dac502259ad0.png

調用setIdentityFromBasicAuth方法后,并且basic認證的value不為空便會進入setIdentityData,在比較userName和userReference都不為空時,最后在completeEvaluatePermission中比較完成后完成身份認證過程。

c4f5167a-723a-11ed-8abf-dac502259ad0.png

隨后"trySendInProcess" 中會根據(jù)請求端口來尋找相關的 "RestWorker" 。在 findWorker() 方法中,將以請求路徑為查詢條件,匹配 RestServer 的 pathToWarkerMap 。之后便會執(zhí)行 worker.onRequest() 方法,將worker添加到 RestServer.readyWorkerSet 中。后面會以該 Set 為消費者隊列,并執(zhí)行各個worker。

c50fe284-723a-11ed-8abf-dac502259ad0.png

"RestServer" 中主要工作是維護隊列,并執(zhí)行相關的worker。入口點為其構造方法:

c53d6a92-723a-11ed-8abf-dac502259ad0.png

processQueueRequests后面運行到 "callDerivedRestMethod" 方法,這里便會調用對應worker的處理方法并完成對應的鏈調用。

c56f6a24-723a-11ed-8abf-dac502259ad0.png

在官方文檔中,有開發(fā)編寫worker的例子,流程如下,在worker中我們發(fā)現(xiàn)WORKER_URI_PATH為uri中/mgmt/"后面的的地址。

c592449a-723a-11ed-8abf-dac502259ad0.png

根據(jù)"WORKER_URI_PATH"字符串,我們可以簡單搜索一下系統(tǒng)中的worker,結果如下圖所示。這里WORKER_URI_PATH為"shared/iapp/rpm-spec-creator"就是生成spec文件的worker

c5cef19c-723a-11ed-8abf-dac502259ad0.png

打開"iAppRpmSpecFileCreatorWorker.js"worker的文件,發(fā)現(xiàn)加載了"../infrastructure/specFileCreator"模塊,并使用SpecWriter變量調用,隨后new了一個specWriter

c600fb56-723a-11ed-8abf-dac502259ad0.png

java中的onPost方法傳進來的restOperation,先getBody獲取內容,并且調用_validate進行判斷,隨后使用specWriter.render進行格式化,最后調用getFs().writeFile生成".spec"文件

c62c4c66-723a-11ed-8abf-dac502259ad0.png

生成spec文件的名字如下。

c6611810-723a-11ed-8abf-dac502259ad0.png

_validate對傳進來的內容進行判斷,如判斷body是否為空,header是否存在"application/json",取出specFileData的json內容并進行判斷,判斷是否有name、summary、version、release、description、srcBasePath字符等等。這里便是漏洞點,漏洞成因便是沒有對用戶傳來的json數(shù)據(jù)進行判斷,導致攻擊者可以通過" "特殊字符進行繞過。

c6811890-723a-11ed-8abf-dac502259ad0.png

在進行格式化時,使用specFileCreator.js模塊。這里使用了doT.js模板,模板path為"./resources"。doT.js 靈感來源于搜尋基于 V8 和 Node.js ,強調性能,最快速最簡潔的 JavaScript 模板函數(shù)。它在 Node.js 和瀏覽器兩端都彰顯出卓越的性能。下圖中specFileData調用specTemplate格式化json數(shù)據(jù)

c6cc6750-723a-11ed-8abf-dac502259ad0.png

doT.js模板如下,當攻擊者傳來的數(shù)據(jù)"description"后面跟著" "是,spec文件就變得攻擊者可控,可隨意添加惡意數(shù)據(jù),如調用"%check 'command'"執(zhí)行系統(tǒng)命令。

c6ffe094-723a-11ed-8abf-dac502259ad0.png

當我們再次通過rest api進行build-package 時,就會執(zhí)行spec文件中的惡意命令

c732629e-723a-11ed-8abf-dac502259ad0.png

CVE-2022-41622

CVE-2022-41622為CSRF漏洞,CSRF漏洞的成因是網(wǎng)站的已認證通過信息在瀏覽器中一段時間內不會過期,以后只要是訪問這個網(wǎng)站,會默認用你已經(jīng)通過的認證信息來進行,所以不用再次登錄。如果攻擊者發(fā)送了構造好的CSRF腳本或包含CSRF腳本的鏈接,管理者點擊后可能會執(zhí)行惡意操作(比如是添加賬號、獲取信息等)。

漏洞程序為 "/iControl/iControlPortal.cgi",并且該程序為suid權限。

c765e2e0-723a-11ed-8abf-dac502259ad0.png

csrf漏洞本身的成因比較簡單,沒有對Content-Type以及Referer進行驗證,以及Token機制不完善。

c78037c6-723a-11ed-8abf-dac502259ad0.png

下面說一下漏洞利用。在前面我們已經(jīng)分析了CVE-2022-41800漏洞,這里的CVE-2022-41622與前面的利用過程類似,這里只不過是利用soap api進行發(fā)送soap請求。當我們在http中用soap方式發(fā)送xml數(shù)據(jù)去調用一個服務時,我們只知道通用的http協(xié)議的傳參方式還是不夠的,我們仍然需要知道目標服務的接口文檔。在soap中每個服務都有的接口文檔就是一個用wsdl規(guī)范編寫的wsdl文檔,當程序接收到soap請求后根據(jù)wsdl文檔進行解析執(zhí)行。

c7b0b00e-723a-11ed-8abf-dac502259ad0.png

下圖為添加用戶請求的wsdl文件為"Management.UserManagement.wsdl"

c7d5ad0a-723a-11ed-8abf-dac502259ad0.png

這樣我們在pre-auth的情況下就可以發(fā)送創(chuàng)建用戶的請求來創(chuàng)建用戶,當然我們也可以構造其他的請求(如上傳文件)

c824660c-723a-11ed-8abf-dac502259ad0.png

漏洞復現(xiàn)

CVE-2022-41800

使用rest api調用rpm-spec-creator創(chuàng)建spec文件并查看。

c8ab8286-723a-11ed-8abf-dac502259ad0.png

使用"nc -lvp 4444"命令監(jiān)聽4444端口

c8e6c8fa-723a-11ed-8abf-dac502259ad0.png

使用rest api調用build-package 構建package包裹。

c90a381c-723a-11ed-8abf-dac502259ad0.png

此時已經(jīng)獲到shell,并且是root權限。

c93b0fc8-723a-11ed-8abf-dac502259ad0.png

CVE-2022-41622

將csrf.html目錄使用python啟動http服務

c97bacb8-723a-11ed-8abf-dac502259ad0.png

假設管理員使用賬號密碼登錄BIG-IP web管理頁面,此時點擊了我們啟動http服務的鏈接,鏈接自動跳轉到"https://192.168.141.152/iControl/iControlportal.cgi"并提交soap請求

c9a60c74-723a-11ed-8abf-dac502259ad0.png

用戶已經(jīng)添加成功

c9c98186-723a-11ed-8abf-dac502259ad0.png

使用我們設置好的用戶名和密碼進行登錄。

c9e10c2a-723a-11ed-8abf-dac502259ad0.png

總結

這一小節(jié),我們簡單分析了F5設備的倆個pre-auth漏洞,了解了rpm注入和csrf漏洞產(chǎn)生原因。并且在此過程中我們簡單學習F5設備中 soap接口和rest接口的區(qū)別以及利用。

蛇矛實驗室成立于2020年,致力于安全研究、攻防解決方案、靶場對標場景仿真復現(xiàn)及技戰(zhàn)法設計與輸出等相關方向。團隊核心成員均由從事安全行業(yè)10余年經(jīng)驗的安全專家組成,團隊目前成員涉及紅藍對抗、滲透測試、逆向破解、病毒分析、工控安全以及免殺等相關領域。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Web
    Web
    +關注

    關注

    2

    文章

    1287

    瀏覽量

    71388
  • 物聯(lián)網(wǎng)

    關注

    2930

    文章

    46221

    瀏覽量

    392255
  • IP
    IP
    +關注

    關注

    5

    文章

    1804

    瀏覽量

    152544
  • 漏洞
    +關注

    關注

    0

    文章

    205

    瀏覽量

    15692

原文標題:物聯(lián)網(wǎng)安全從零開始-BIG-IP CVE漏洞分析

文章出處:【微信號:蛇矛實驗室,微信公眾號:蛇矛實驗室】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    從零開始學電路基礎》(從零開始學電子技術叢書)

    從零開始學電路基礎》(從零開始學電子技術叢書)下載地址如下http://www.verycd.com/topics/2798785/[從零開始學電路基礎].劉建清.掃描版.pdf[從零開始
    發(fā)表于 06-05 23:12

    labview從零開始

    怎么從零開始啊,哪位大神給個意見
    發(fā)表于 07-10 10:29

    直擊聯(lián)網(wǎng)安全問題:機智云與斗象科技建物聯(lián)網(wǎng)安全實驗室

    2016年12月28日,在上海國際會議中心舉辦的Freebuf互聯(lián)網(wǎng)安全創(chuàng)新大會(FIT 2017)上,全球領先的專業(yè)聯(lián)網(wǎng)開發(fā)和云服務平臺機智云與上海斗象科技(
    發(fā)表于 12-30 14:25

    安全瀏覽器竟然也被查出高危漏洞?開源安全問題不容忽視

    , apk, ipk, iso, bin, dll,dmg, pkg等多種二進制文件進行掃描,不僅能定位開源漏洞并提供CVE編號和修補方案,還能分析出所使用的開源組件清單,據(jù)說使用的是國際上律師事務所
    發(fā)表于 09-05 14:26

    平臺安全架構對聯(lián)網(wǎng)安全的影響

    能源設施、車聯(lián)網(wǎng)等基礎設施,也包括網(wǎng)絡攝像頭和智能照明等低成本設備。安全漏洞聯(lián)網(wǎng)互聯(lián)設備帶來諸多問題。機密信息泄露、個人數(shù)據(jù)被盜、聯(lián)網(wǎng)
    發(fā)表于 07-22 07:41

    開源鴻蒙 OpenHarmony 獲得 CVE 通用漏洞披露編號頒發(fā)資質

    披露計劃)建立,由來自世界各地的 IT 供應商、安全公司和安全研究組織組成。相關者可以通過唯一的 CVE編碼在漏洞數(shù)據(jù)庫或安全工具中快速地找
    發(fā)表于 08-17 11:34

    STM32Cube工具的log4j漏洞CVE-2021-44228和CVE-2021-45046有何影響?

    STM32Cube工具的log4j漏洞CVE-2021-44228和CVE-2021-45046有何影響?
    發(fā)表于 12-07 07:02

    從零開始學電路基礎

    從零開始學電路基礎 電路基礎是學習電子技術的起步知識。本書就是為使初學者從零開始,快速掌握電路基礎知識而編寫的。與傳統(tǒng)的電路基礎教材不同的是,本書擯棄了
    發(fā)表于 03-15 16:12 ?0次下載

    電腦組裝從零開始

    電腦組裝從零開始問題解答
    發(fā)表于 06-29 17:34 ?148次下載

    從零開始搭建3D打印機

    從零開始搭建3D打印機從零開始搭建3D打印機
    發(fā)表于 01-15 16:35 ?0次下載

    從零開始android游戲編程

    從零開始android游戲編程
    發(fā)表于 03-19 11:23 ?3次下載

    國家信息安全漏洞共享平臺收錄兩個 Windows 系統(tǒng) TCP/IP 高危漏洞,微軟已修復

    2月份,國家信息安全漏洞共享平臺(CNVD)收錄了兩個微軟 Windows 操作系統(tǒng) TCP/IP 高危漏洞(CNVD-2021-10528,對應 CVE
    的頭像 發(fā)表于 02-18 18:01 ?3887次閱讀

    IP知識百科之CVE

    CVE(Common Vulnerabilities and Exposures)的全稱是公共漏洞和暴露,是公開披露的網(wǎng)絡安全漏洞列表。IT人員、安全研究人員查閱
    的頭像 發(fā)表于 09-16 09:20 ?3895次閱讀

    STM32從零開始 - 前言:硬件準備

    STM32從零開始 - 前言:硬件準備
    發(fā)表于 11-23 17:51 ?10次下載
    STM32<b class='flag-5'>從零開始</b> - 前言:硬件準備

    聯(lián)網(wǎng)系統(tǒng)的安全漏洞分析

    隨著聯(lián)網(wǎng)技術的快速發(fā)展,越來越多的設備被連接到互聯(lián)網(wǎng)上,從智能家居、智能城市到工業(yè)自動化,聯(lián)網(wǎng)的應用范圍不斷擴大。然而,隨著
    的頭像 發(fā)表于 10-29 13:37 ?1221次閱讀