在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

物聯網安全從零開始-BIG-IP CVE漏洞分析

蛇矛實驗室 ? 來源:蛇矛實驗室 ? 作者:蛇矛實驗室 ? 2022-12-05 11:48 ? 次閱讀

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

背景

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

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

環境搭建

本小節使用的漏洞環境固件為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數據交換格式為soap/xml。rest api數據交換格式使用http/json。soap api為比較舊的技術,在版本11.6中已經放棄維護,目前支持正常使用,rest api目前官方一直在推薦用戶使用和開發。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"目錄下發現了httpd啟動服務的httpd腳本,腳本注明為apache server并且配置文件的位置為"/etc/httpd/conf/httpd.conf"。

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

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

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

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

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

查看一下8100端口的服務,發現有java服務在監聽

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

查看一下pid信息,發現java的"-classpath"參數后為"usr/share/java/rest"和"usr/share/java/rest/libs"目錄下的所有jar包,且"--port"參數為8100。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

打開"iAppRpmSpecFileCreatorWorker.js"worker的文件,發現加載了"../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數據進行判斷,導致攻擊者可以通過" "特殊字符進行繞過。

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

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

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

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

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

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

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

CVE-2022-41622

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

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

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

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

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

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

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

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

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

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

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

漏洞復現

CVE-2022-41800

使用rest api調用rpm-spec-creator創建spec文件并查看。

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

使用"nc -lvp 4444"命令監聽4444端口

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

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

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

此時已經獲到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

用戶已經添加成功

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

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

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

總結

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

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

審核編輯:湯梓紅

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

    關注

    2

    文章

    1283

    瀏覽量

    70876
  • 物聯網
    +關注

    關注

    2927

    文章

    45949

    瀏覽量

    388610
  • IP
    IP
    +關注

    關注

    5

    文章

    1789

    瀏覽量

    151423
  • 漏洞
    +關注

    關注

    0

    文章

    205

    瀏覽量

    15634

原文標題:物聯網安全從零開始-BIG-IP CVE漏洞分析

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

收藏 人收藏

    評論

    相關推薦
    熱點推薦

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

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

    labview從零開始

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

    直擊聯網安全問題:機智云與斗象科技建物聯網安全實驗室

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

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

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

    平臺安全架構對聯網安全的影響

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

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

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

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

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

    從零開始學電路基礎

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

    電腦組裝從零開始

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

    從零開始搭建3D打印機

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

    從零開始android游戲編程

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

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

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

    IP知識百科之CVE

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

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

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

    聯網系統的安全漏洞分析

    隨著聯網技術的快速發展,越來越多的設備被連接到互聯網上,從智能家居、智能城市到工業自動化,聯網的應用范圍不斷擴大。然而,隨著
    的頭像 發表于 10-29 13:37 ?1088次閱讀
    主站蜘蛛池模板: 一区二区三区视频观看 | 久久草在线精品 | 欧美猛交xxxx乱大交 | 特级毛片a级毛免费播放 | 国产精品第页 | www.婷婷| 欧美色啪 | 黄色网址你懂得 | 欧美四虎 | 欧美系列在线 | 亚洲人成电影在线 | 猛操在线| 中国一级毛片aaa片 中国一级特黄aa毛片大片 | 国产综合免费视频 | 伊人久久成人爱综合网 | 久久综合久 | 天天搞天天色 | 亚洲一区二区三区高清视频 | 日韩性插 | 天堂社区在线观看 | 一区二区不卡免费视频 | 欧美久久天天综合香蕉伊 | 午夜日韩精品 | 国产日日夜夜 | 爽天天天天天天天 | 韩国理伦片在线观看2828 | 在线亚洲免费 | 新版bt天堂资源在线 | 深夜动态福利gif动态进 | 一区| 久草视频这里只有精品 | 四虎影院在线免费观看 | 婷婷激情视频 | 亚洲午夜久久久久久噜噜噜 | 手机在线你懂得 | 性欧美暴力猛交69hd | 日本在线黄色网址 | 亚洲精品91香蕉综合区 | 性欧美一级| 91po狼人社在线观看 | 国产免费一级在线观看 |