WalletConnect釣魚風險介紹
2023年1月30日,慢霧安全團隊發現Web3錢包上關于WalletConnect使用不當可能存在被釣魚的安全風險問題。這個問題存在于使用移動端錢包App內置的DAppBrowser+?WalletConnect的場景下。
我們發現,部分Web3錢包在提供WalletConnect支持的時候,沒有對WalletConnect的交易彈窗要在哪個區域彈出進行限制,因此會在錢包的任意界面彈出簽名請求。
當用戶離開DAppBrowser界面切換到錢包其他界面如示例中的Wallet、Discover等界面,由于錢包為了不影響用戶體驗和避免重復授權,此時WalletConnect的連接是沒有斷開的,但是此時用戶卻可能因為惡意DApp突然發起的簽名請求彈窗而誤操作導致被釣魚轉移走資產。
慢霧:利用者通過執行惡意提案控制了Tornado.Cash的治理:金色財經報道,SlowMist發布Tornado.Cash治理漏洞解析。 5月20日,Tornado.Cash遭受了治理攻擊,利用者通過執行惡意提案控制了Tornado.Cash的治理。5月13日,利用者發起了20提案,并在提案中說明20提案是對16提案的補充,具有相同的執行邏輯。但實際上,提案合約多了一個自毀邏輯,其創建者是通過create2創建的,具有自毀功能,所以在與提案合約自毀后,利用者仍可以部署不同的以與以前相同的方式將字節碼發送到相同的地址。不幸的是,社區沒有看到擬議合約中的犯規行為,許多用戶投票支持該提案。
在5月18日,利用者通過創建具有多個交易的新地址,反復將0代幣鎖定在治理中。利用提案合約可以銷毀并重新部署新邏輯的特性,利用者在5月20日7:18(UTC)銷毀了提案執行合約,并在同一地址部署了一個惡意合約,其邏輯是修改用戶在治理中鎖定的代幣數量。
攻擊者修改完提案合約后,于5月20日7:25(UTC)執行惡意提案合約。該提案的執行是通過 Delegatecall 執行的,因此,該提案的執行導致治理合約中由開發者控制的地址的代幣鎖定量被修改為 10,000。提案執行完成后,攻擊者從治理庫中解鎖了TORN代幣。金庫中的TORN代幣儲備已經耗盡,同時利用者控制了治理。[2023/5/21 15:17:00]
慢霧:NimbusPlatform遭遇閃電貸攻擊,損失278枚BNB:據慢霧安全團隊情報,2022 年 12 月 14 日, BSC 鏈上的NimbusPlatform項目遭到攻擊,攻擊者獲利約278枚BNB。慢霧安全團隊以簡訊的形式分享如下:
1. 攻擊者首先在 8 天前執行了一筆交易(0x7d2d8d),把 20 枚 BNB 換成 NBU_WBNB 再換成 GNIMB 代幣,然后把 GNIMB 代幣轉入 Staking 合約作質押,為攻擊作準備;
2. 在 8 天后正式發起攻擊交易(0x42f56d3),首先通過閃電貸借出 75477 枚 BNB 并換成 NBU_WBNB,然后再用這些 NBU_WBNB 代幣將池子里的絕大部分 NIMB 代幣兌換出;
3. 接著調用 Staking 合約的 getReward 函數進行獎勵的提取,獎勵的計算是和 rate 的值正相關的,而 rate 的值則取決于池子中 NIMB 代幣和 GNIMB 代幣的價格,由于 NIMB 代幣的價格是根據上一步閃電貸中被操控的池子中的代幣數量來計算的,導致其由于閃電貸兌換出大量的代幣而變高,最后計算的獎勵也會更多;
4. 攻擊者最后將最后獲得的 GNIMB 代幣和擁有的 NIMB 代幣換成 NBU_WBNB 代幣后再換成 BNB,歸還閃電貸獲利;
此次攻擊的主要原因在于計算獎勵的時候僅取決于池子中的代幣數量導致被閃電貸操控,從而獲取比預期更多的獎勵。慢霧安全團隊建議在進行代幣獎計算時應確保價格來源的安全性。[2022/12/14 21:44:29]
動態演示GIF如下圖:
慢霧:Crosswise遭受攻擊因setTrustedForwarder函數未做權限限制:據慢霧區情報,2022年1月18日,bsc鏈上Crosswise項目遭受攻擊。慢霧安全團隊進行分析后表示,此次攻擊是由于setTrustedForwarder函數未做權限限制,且在獲取調用者地址的函數_msg.sender()中,寫了一個特殊的判斷,導致后續owner權限被轉移以及后續對池子的攻擊利用。[2022/1/19 8:57:48]
攻擊者利用惡意DApp釣魚網站引導用戶使用WalletConnect與釣魚頁面連接后,然后定時不間斷發送惡意的簽名請求。用戶識別到eth_sign可能不安全拒絕簽名后,由于WalletConnect采用wss的方式進行連接,如果用戶沒有及時關閉連接,釣魚頁面會不斷的發起構造惡意的eth_sign簽名彈窗請求,用戶在使用錢包的時候有很大的可能會錯誤的點擊簽署按鈕,導致用戶的資產被盜。
慢霧:BSC鏈上項目BXH遭受攻擊分析:10月30日消息,據慢霧區情報,2021年10月30日,幣安智能鏈上(BSC)去中心化交易協議BXH項目遭受攻擊,被盜約1.3億美金。經慢霧安全團隊分析,黑客于27日13時(UTC)部署了攻擊合約0x8877,接著在29日08時(UTC)BXH項目管理錢包地址0x5614通過grantRole賦予攻擊合約0x8877管理權限。30日03時(UTC)攻擊者通過攻擊合約0x8877的權限從BXH策略池資金庫中將其管理的資產轉出。30日04時(UTC)0x5614暫停了資金庫。因此BXH本次被盜是由于其管理權限被惡意的修改,導致攻擊者利用此權限轉移了項目資產。[2021/10/30 6:22:02]
這個安全問題的核心是用戶切換DAppBrowser界面到其他界面后,是否應繼續自動彈窗響應來自DAppBrowser界面的請求,尤其是敏感操作請求。因為跨界面后盲目彈窗響應很容易導致用戶的誤操作。
這里面涉及到一個安全原則:WalletConnect連接后,錢包在檢測到用戶切換DAppBrowser界面到其他界面后,應該對來自DAppBrowser的彈窗請求不進行處理。
慢霧:警惕ETH新型假充值,已發現在野ETH假充值攻擊:經慢霧安全團隊監測,已發現存在ETH假充值對交易所攻擊的在野利用,慢霧安全團隊決定公開修復方案,請交易所或錢包及時排查ETH入賬邏輯,必要時聯系慢霧安全團隊進行檢測,防止資金丟失。建議如沒有把握成功修復可先臨時暫停來自合約地址的充值請求。再進行如下修復操作:1、針對合約ETH充值時,需要判斷內聯交易中是否有revert的交易,如果存在revert的交易,則拒絕入賬。2、采用人工入賬的方式處理合約入賬,確認充值地址到賬后才進行人工入賬。同時需要注意,類以太坊的公鏈幣種也可能存在類似的風險。[2020/5/23]
另外需要注意的是,雖然移動端錢包App+PC瀏覽器的WalletConnect連接場景也存在同樣的問題,但是用戶在這種場景下或許不那么容易誤操作。
WalletConnect連接后界面切換的處理情況
慢霧安全團隊抽取市面熱門搜索和下載量比較大的20個CryptoWalletApp進行測試:
根據上表測試結果,我們發現:
1.部分熱門錢包App如MetaMask、EnjinWallet、TrustWallet、SafePalWallet及iTokenWallet等,在WalletConnect連接后切換到其他界面時,會自動響應DApp的請求,并彈出簽名窗口。
2.大部分測試的錢包App在切換界面后,對DApp的請求不會做出響應,也不會彈出提示窗口。
3.少數錢包App在測試環境下無法使用WalletConnect與DApp連接,如CoinbaseWallet和MEWCryptoWallet等。錢包的DApp中不是很適配?WalletConnect接口。
4.部分錢包App如ExodusWallet和EdgeWallet在連接測試環境下未找到相關的DApp進行測試,無法判斷其切換界面后的響應情況。
WalletConnect釣魚風險的發現和后續
慢霧安全團隊最初在TrustWallet上發現這個問題,并通過Bugcrowd漏洞提交平臺向他們提交了這個問題,我們獲得了TrustWallet的感謝,他們表示將在下一個版本修復這個安全風險。
特別的是,如果錢包對eth_sign這種低級簽名函數沒有任何風險提醒,eth_sign這是一種非常危險的低級簽名,大大加劇了WalletConnect這個問題釣魚的風險。
不過如果只是禁用了eth_sign也不是完全沒有風險,我們還是呼吁更多的錢包開始禁用它。以用戶數量最多的MetaMask錢包為例,其插件端已經在2023年2月10號發布的V10.25.0版本默認禁用eth_sign,而移動端也在2023年3月1號發布的版本號為6.11開始默認不支持eth_sign,用戶需要到設置里手動打開才能使用它。
不過值得一提的是,MetaMask6.11版本之后添加了對DApp進行URI請求的校驗,但是這個校驗在DApp使用WalletConnect進行交互的時候,同樣會進行彈窗警告,不過這個警告存在被無限制彈窗導致DoS的風險。
總結與建議
對個人用戶來說,風險主要在“域名、簽名”兩個核心點,WalletConnect這種釣魚方式早已被很多惡意網站用于釣魚攻擊,使用時務必保持高度警惕。
對錢包項目方來說,首先是需要進行全面的安全審計,重點提升用戶交互安全部分,加強所見即所簽機制,減少用戶被釣魚風險,如:
釣魚網站提醒:通過生態或者社區的力量匯聚各類釣魚網站,并在用戶與這些釣魚網站交互的時候對風險進行醒目地提醒和告警。
簽名的識別和提醒:識別并提醒eth_sign、personal_sign、signTypedData這類簽名的請求,并重點提醒eth_sign盲簽的風險。
所見即所簽:錢包中可以對合約調用進行詳盡解析機制,避免Approve釣魚,讓用戶知道DApp交易構造時的詳細內容。
預執行機制:通過交易預執行機制可以幫助用戶了解到交易廣播執行后的效果,有助于用戶對交易執行進行預判。
尾號相同的詐騙提醒:在展示地址的時候醒目的提醒用戶檢查完整的目標地址,避免尾號相同的詐騙問題。設置白名單地址機制,用戶可以將常用的地址加入到白名單中,避免類似尾號相同的攻擊。
在交易顯示上,可以增加對小額或者無價值代幣交易的隱藏功能,避免尾號釣魚。
AML合規提醒:在轉賬的時候通過AML機制提醒用戶轉賬的目標地址是否會觸發AML的規則。
請持續關注慢霧安全團隊,更多的釣魚安全風險分析與告警正在路上。
慢霧科技作為一家行業領先的區塊鏈安全公司,在安全審計方面深耕多年,安全審計不僅讓用戶安心,更是降低攻擊發生的手段之一。其次,各家機構由于數據孤島,難以關聯識別出跨機構的洗錢團伙,給反洗錢工作帶來巨大挑戰。而作為項目方,及時拉黑阻斷惡意地址的資金轉移也是重中之重。MistTrack反洗錢追蹤系統積累了2億多個地址標簽,能夠識別全球主流交易平臺的各類錢包地址,包含1千多個地址實體、超10萬個威脅情報數據和超9千萬個風險地址,如有需要可聯系我們接入API。最后希望各方共同努力,一起讓區塊鏈生態更美好。
Tags:ALLWALLLEWALLItalian Football Federationpolkawallet挖礦教程SHIBKILLERtrustwallet錢包安全性
安全是錢包的底線。而是否好用,則是Web2用戶能否大量進入到Web3世界的關鍵。在過去一年中,錢包的底層技術方面也實現了跨越式的發展,MPC錢包、AA錢包、智能合約錢包都讓“無私鑰”成為可能.
1900/1/1 0:00:00在上篇文章中我提到,Meta放棄了將NFT集成到他們的核心產品Facebook和Instagram的計劃。如果市場沒有因為銀行業的危機而陷入恐慌,這件事本應引起相當大的關注.
1900/1/1 0:00:00美東時間周三,美國科技巨頭Meta開始了最新一輪全公司范圍內的裁員,主要涉及工程師和其他技術人員。當日Meta股價盤中下跌2.28%.
1900/1/1 0:00:00Voolacoin是一種數字資產,即將在區塊鏈領域進行布局,這對Voolacoin及其生態系統來說是一項重要的里程碑,將能夠吸引更多的投資者和交易者參與,從而增加交易活躍度和流動性.
1900/1/1 0:00:00原文作者:Messari-KunalGoel原創編譯:BlockTurbo以太坊也因其可持續的貨幣政策和大量去中心化應用程序的生態系統受益,提供了有別于其他加密貨幣的價值主張.
1900/1/1 0:00:00近日,香港web3嘉年華開啟,香港又一次吸引了全球行業的目光。如此聲勢浩大,再加上政府背書與鼎力支持,香港一時成為了風水寶地,勢頭已經壓過新加坡.
1900/1/1 0:00:00