使用過MetaMask版本低于10.11.3的用戶,如在導入助記詞時點擊了ShowSecretRecoveryPhrase,那么助記詞可能泄露了。
2022年6月16日,MetaMask官方公布白帽子發現的一個被稱為demonicvulnerability的安全問題,漏洞影響的版本<10.11.3,由于MM的用戶體量較大,且基于MM進行開發的錢包也比較多,所以這個漏洞的影響面挺大的,因此MM也慷慨支付了白帽子5萬刀的賞金。當團隊向我同步了這個漏洞后,我開始著手對這個漏洞進行分析和復現。
漏洞分析
慢霧:Grafana存在賬戶被接管和認證繞過漏洞:金色財經報道,據慢霧消息,Grafana發布嚴重安全提醒,其存在賬戶被接管和認證繞過漏洞(CVE-2023-3128),目前PoC在互聯網上公開,已出現攻擊案例。Grafana是一個跨平臺、開源的數據可視化網絡應用程序平臺,用戶配置連接的數據源之后,Grafana可以在網絡瀏覽器里顯示數據圖表和警告。Grafana根據電子郵件的要求來驗證Azure Active Directory賬戶。在Azure AD上,配置文件的電子郵件字段在Azure AD租戶之間是不唯一的。當Azure AD OAuth與多租戶Azure AD OAuth應用配置在一起時,這可能會使Grafana賬戶被接管和認證繞過。其中,Grafana>=6.7.0受到影響。加密貨幣行業有大量平臺采用此方案用來監控服務器性能情況,請注意風險,并將Grafana升級到最新版本。[2023/6/25 21:58:31]
白帽子將這個漏洞命名為demonicvulnerability,具體的漏洞描述比較復雜,為了讓大家更好的理解這個問題,我盡可能用簡單的表述來說明這個問題。在使用MM瀏覽器擴展錢包導入助記詞時,如果點擊"ShowSecretRecoveryPhrase"按鈕,瀏覽器會將輸入的完整助記詞明文緩存在本地磁盤,這是利用了瀏覽器本身的機制,即瀏覽器會將Tabs的頁面中的Text文本從內存保存到本地,以便在使用瀏覽器的時候可以及時保存頁面的狀態,用于下次打開頁面的時候恢復到之前的頁面狀態。
慢霧:V神相關地址近日于Uniswap賣出3000枚以太坊:11月14日消息,據慢霧監測顯示,以太坊創始人Vitalik Buterin地址(0xe692開頭)近日在Uniswap V3上分三筆將3000枚以太坊(約400萬美元)兌換成了USDC。[2022/11/14 13:03:22]
基于對這個漏洞的理解,我開始進行漏洞復現,由于MM僅對這個漏洞進行簡要的描述并不公開漏洞細節,所以在復現的時候遇到了如下的問題:
緩存被記錄到磁盤中的文件路徑未知
緩存何時被記錄到磁盤未知
慢霧:警惕 Terra 鏈上項目被惡意廣告投放釣魚風險:據慢霧區情報,近期 Terra 鏈上部分用戶的資產被惡意轉出。慢霧安全團隊發現從 4 月 12 日開始至 4 月 21 日約有 52 個地址中的資金被惡意轉出至 terra1fz57nt6t3nnxel6q77wsmxxdesn7rgy0h27x30 中,當前總損失約 431 萬美金。
經過慢霧安全追蹤分析確認,此次攻擊為批量谷歌關鍵詞廣告投放釣魚,用戶在谷歌搜索如:astroport,nexus protocol,anchor protocol 等這些知名的 Terra 項目,谷歌結果頁第一條看似正常的廣告鏈接(顯示的域名甚至是一樣的)實為釣魚網站。 一旦用戶不注意訪問此釣魚網站,點擊連接錢包時,釣魚網站會提醒直接輸入助記詞,一旦用戶輸入并點擊提交,資產將會被攻擊者盜取。
慢霧安全團隊建議 Terra 鏈上用戶保持警惕不要隨便點擊谷歌搜索出來的鏈接或點擊來歷不明的鏈接,減少使用常用錢包進行非必要的操作,避免不必要的資損。[2022/4/21 14:37:55]
為了解決問題1,我開始對瀏覽器的緩存目錄結構進行分析和測試,發現在使用瀏覽器(chrome)的時候相關的Tabs緩存是記錄到了如下的目錄:
慢霧:Avalanche鏈上Zabu Finance被黑簡析:據慢霧區情報,9月12日,Avalanche上Zabu Finance項目遭受閃電貸攻擊,慢霧安全團隊進行分析后以簡訊的形式分享給大家參考:
1.攻擊者首先創建兩個攻擊合約,隨后通過攻擊合約1在Pangolin將WAVAX兌換成SPORE代幣,并將獲得的SPORE代幣抵押至ZABUFarm合約中,為后續獲取ZABU代幣獎勵做準備。
2.攻擊者通過攻擊合約2從Pangolin閃電貸借出SPORE代幣,隨后開始不斷的使用SPORE代幣在ZABUFarm合約中進行`抵押/提現`操作。由于SPORE代幣在轉賬過程中需要收取一定的手續費(SPORE合約收取),而ZABUFarm合約實際接收到的SPORE代幣數量是小于攻擊者傳入的抵押數量的。分析中我們注意到ZABUFarm合約在用戶抵押時會直接記錄用戶傳入的抵押數量,而不是記錄合約實際收到的代幣數量,但ZABUFarm合約在用戶提現時允許用戶全部提取用戶抵押時合約記錄的抵押數量。這就導致了攻擊者在抵押時ZABUFarm合約實際接收到的SPORE代幣數量小于攻擊者在提現時ZABUFarm合約轉出給攻擊者的代幣數量。
3.攻擊者正是利用了ZABUFarm合約與SPORE代幣兼容性問題導致的記賬缺陷,從而不斷通過`抵押/提現`操作將ZABUFarm合約中的SPORE資金消耗至一個極低的數值。而ZABUFarm合約的抵押獎勵正是通過累積的區塊獎勵除合約中抵押的SPORE代幣總量參與計算的,因此當ZABUFarm合約中的SPORE代幣總量降低到一個極低的數值時無疑會計算出一個極大的獎勵數值。
4.攻擊者通過先前已在ZABUFarm中有進行抵押的攻擊合約1獲取了大量的ZABU代幣獎勵,隨后便對ZABU代幣進行了拋售。
此次攻擊是由于ZabuFinance的抵押模型與SPORE代幣不兼容導致的,此類問題導致的攻擊已經發生的多起,慢霧安全團隊建議:項目抵押模型在對接通縮型代幣時應記錄用戶在轉賬前后合約實際的代幣變化,而不是依賴于用戶傳入的抵押代幣數量。[2021/9/12 23:19:21]
Tabs緩存路徑:
/Users/$(whoami)/Library/ApplicationSupport/Google/Chrome/Default/Sessions/
然后繼續解決問題2:Sessions目錄會記錄Tabs的緩存,為了找出緩存被記錄的時間節點,我對導入助記詞的整個流程進行了分解,然后在每一步操作之后去觀察Sessions的數據變化。發現在如下這個頁面輸入助記詞數據后,需要等待10-20s,然后關閉瀏覽器,明文的助記詞信息就會被記錄到Sessions緩存數據中。
分析結論
用戶正常在使用MM的時候是將助記詞相關的數據放入內存中進行存儲,一般認為是相對較為安全的,但是由于demonicvulnerability這個漏洞導致助記詞會被緩存到本地磁盤,因此就會有如下的新的利用場景:
明文的助記詞數據緩存在本地磁盤,可以被其他應用讀取,在PC電腦中很難保證其他應用程序不去讀取Sessions緩存文件。
明文的助記詞數據緩存在本地磁盤,如果磁盤未被加密,可以通過物理接觸恢復助記詞。比如在類似維修電腦等場景下,當他人對電腦進行物理接觸時可以從硬盤中讀取助記詞數據。
作為普通用戶,如果你使用過MetaMaskVersion<10.11.3,且在導入助記詞的時候點擊了ShowSecretRecoveryPhrase,那么你的助記詞有可能泄露了,可以參考MetaMask的文章對磁盤進行加密并更換錢包遷移數字資產。
作為擴展錢包項目方,如果采用了在Tabs頁面中以Text的方式輸入助記詞導入錢包,均受到demonicvulnerability漏洞的影響,可以參考MetaMaskVersion>=10.11.3的實現,為每個助記詞定義單獨的輸入框,并且輸入框的類型為Password。
原文標題:《MetaMask瀏覽器擴展錢包demonic漏洞分析》
撰文:Thinking@慢霧安全團隊
來源:ForesightNews
Tags:ABUPORORESPOREMetaBullrageMINISPORTZ幣BeforeCoinMarketCapSpores
首先:瀏覽器錢包是旨在通過網絡瀏覽器使用的加密錢包。對我們大多數人來說,當我們看到「瀏覽器錢包」時,我們就會想到MetaMask這樣的瀏覽器擴展項目,人們可以直接下載到Chrome、Brave等.
1900/1/1 0:00:00Twitter和Square的創始人JackDorsey正在推出一個Web3的競爭對手:“Web5”。這是JackDorsey的TBD團隊正在構建的去中心化未來.
1900/1/1 0:00:001.金色觀察|Bankless:熊市中看好的8個項目2021年,web3的全新領域從0變為1——這是最困難的部分。現在我們需要頭腦清醒,資金充足的公司根據這些藍圖進行大的建設.
1900/1/1 0:00:00現今是2022年,元治理活動正迅速成為加密貨幣生態系統的主流;各個DAO也已經意識到,它們可以通過利用其他DAO的技術和資源,達到超強的增長和價值創造的最佳戰略.
1900/1/1 0:00:00因為比特幣跟美股的正相關性,所以今天從2個指標來看看,是否究竟是否到底? 第一個指標是美林時鐘! 美林時鐘.
1900/1/1 0:00:00Web3.0作為一個新興卻又極其火爆的概念,引人注目的同時也引發了各種褒貶不一的暢想與質疑。Web3.0到底該如何定義,會使用到哪些技術?如何進行Web3.0的基礎設施建設,以及它將面臨哪些困境.
1900/1/1 0:00:00