BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

一茬接一茬,Web3.0移動錢包又現獨特釣魚攻擊手法Modal Phishing

CertiK
特邀专栏作者
2023-04-20 06:30
本文約2615字,閱讀全文需要約4分鐘
網絡釣魚攻擊都已經這麼氾濫了,居然還有新的模態釣魚攻擊?
AI總結
展開
網絡釣魚攻擊都已經這麼氾濫了,居然還有新的模態釣魚攻擊?

fbcb39b574e19076e8c10105ef0188f9

我們最近發現了一種新型的網絡釣魚技術,可用於在連接的去中心化應用(DApp)身份方面誤導受害者。

我們將這種新型的網絡釣魚技術命名為Modal Phishing(模態釣魚攻擊)。

攻擊者可以向移動錢包發送偽造的虛假信息冒充合法的DApp,並通過在移動錢包的模態窗口中顯示誤導性信息來誘騙受害者批准交易。這種網絡釣魚技術正在廣泛使用。我們與相應的組件開發人員進行了溝通,並確認他們將發布新的驗證API 以降低該風險。

什麼是Modal Phishing?

在CertiK 對移動錢包的安全研究中,我們注意到Web3.0 貨幣錢包的某些用戶界面(UI)元素可以被攻擊者控制用來進行網絡釣魚攻擊。我們將這種釣魚技術命名為Modal Phishing,因為攻擊者主要針對加密錢包的模態窗口進行釣魚攻擊。

圖片描述

圖片描述

553e5ae5d096235b41d6719e9270de35

真實交易批准模式與網絡釣魚交易批准模式對比

在上方截圖中,我們展示了Metamask 上一個常規的交易審批模態窗口是如何出現的。

當一個新的交易請求被連接的去中心化應用程序(DApp)初始化時,錢包會展示一個新的模態窗口,並要求用戶進行人工確認。

如上圖左側所示,模態窗口通常包含請求者的身份,如網站地址(此例中為localhost)、圖標等。如Metamask 這樣的一些錢包也會顯示有關請求的關鍵信息,在實例中我們看到一些UI 元素被標記為“Confirm”,以提示用戶這是一個常規的交易請求。

然而,這些用戶界面元素可以被攻擊者控制以進行Modal Phishing 攻擊。在右側的截圖中,我們可以看到攻擊者可以更改交易細節,並將交易請求偽裝成來自“Metamask”的“Security Update”請求,以誘使用戶批准。

如截圖所示,攻擊者可以操縱多個UI 元素。

因此我們將在本文中為大家分享兩個典型案例,並確定那些可被攻擊者控制的UI 元素。

詳細信息如下:

圖片描述

圖片描述

23a27a5e1da49556b85c034c6255a76b

攻擊者控制的Modal 和相關的信息源(DApp 信息和方法名稱)示例

示例①:通過Wallet Connect 進行DApp 釣魚攻擊

Wallet Connect 協議是一個廣受歡迎的開源協議,用於通過二維碼或深度鏈接將用戶的錢包與DApp 連接。用戶可以通過Wallet Connect 協議將他們的錢包與DApp 連接起來,然後與該協議進行進行交易或轉賬。

在Web3.0 貨幣錢包和DApp 之間的配對過程中,我們注意到Web3.0 貨幣錢包會展示一個模態窗口,顯示傳入配對請求的元信息——包括DApp 的名稱,網站地址,圖標和描述。 Web3.0 錢包展示的這些信息和方式根據DApp 名稱、圖標和網站地址不同而變化,以供用戶查看。

但是這些信息是DApp 提供的,錢包並不驗證其所提供信息是否合法真實。比如在網絡釣魚攻擊中,某雷碧可以假稱為某雪碧(均為DApp),而後在用戶發起交易請求之前誘騙用戶與其連接。

小伙伴們可以復制鏈接【https://www.youtube.com/watch? v=x 6 muJmDBC 3 o】到瀏覽器查看CertiK 為此做的一個小測試。

在該視頻中,CertiK 展示了攻擊者是如何「欺瞞」Uniswap DApp 的——攻擊者聲稱自己是Uniswap DApp,並連接Metamask 錢包,以此欺騙用戶批准傳入的交易。

在配對過程中,錢包內顯示的模態窗口呈現了合規Uniswap DApp 的名稱、網站網址和網站圖標。

由於網址中使用了https 方案,所以還顯示了一個掛鎖圖標,這樣顯得模態窗口更為逼真和合法了。在配對過程中,只要受害者想在假Uniswap 網站上進行交易操作,攻擊者就可以替換交易請求參數(如目的地地址和交易金額)來竊取受害者的資金。

圖片描述

圖片描述

a199aad38b4820fc4d1516e81628092d

Modal Phishing:連接到Zengo 和1Inch錢包的虛假DApp

現在我們知道了配對和交易模態窗口可以被攻擊者操縱,這樣的攻擊可以被用來讓用戶相信交易請求來自合法的DApp。

如下方截圖所示,我們創建了一個自稱是“Metamask”的虛假DApp,並啟動了一個釣魚智能合約。攻擊者可以在交易批准模態中冒充Metamask 或Uniswap 的DApp。

a993c48bb4a6d8f1b262cd5e96065cea

如上例所示,被大規模使用的Wallet Connect 協議並未驗證配對的DApp 信息的合法性。被操縱的元信息被錢包應用程序進一步使用並呈現給用戶,這可以被用來進行Modal Phishing。作為一個潛在的解決方案,Wallet Connect 協議可以提前驗證DApp 信息的有效性和合法性。 Wallet Connect 的開發人員已經承認了知曉這個問題,並正在研究相關解決方案。

示例② :通過MetaMask 進行智能合約信息網絡釣魚

圖片描述

圖片描述

fa8ae007632ff21d32777f8e60d11c22

圖片描述

63844eb2b333264ab6cfec85712339d5

MetaMask 的智能合約方法名稱說明

我們可以看到Metamask 上有一個交易請求模態,其被標記為“Security Update”。攻擊者建立了一個釣魚智能合約,其有一個SecurityUpdate 具備支付函數功能,並允許受害者將資金轉入該智能合約。

圖片描述

圖片描述

f41b454ff4248432e0f1b734f2b7e5fc

釣魚交易批准模態

寫在最後

寫在最後

寫在最後

在本文中,我們為大家展示了Web3.0 貨幣錢包上不應盲目信任的常見UI 組件——模態窗口。

模態窗口中的某些UI 元素可以被攻擊者操縱,以創造出非常「真實且有說服力」的釣魚陷阱。因此,我們將這種新的網絡釣魚技術命名為Modal Phishin(模態釣魚攻擊)。

這種攻擊發生的根本原因是錢包應用程序沒有徹底驗證所呈現的UI 元素的合法性。

例如,錢包應用程序直接信任來自Wallet Connect SDK 的元數據,並將其呈現給了用戶。

Wallet Connect SDK 也並不驗證傳入的元數據,這在某些情況下使得呈現的元數據可以被攻擊者控制。在Metamask 中,我們可以看到類似的攻擊原理也被攻擊者濫用,在模態窗口中顯示欺詐性的智能合約函數方法名稱。

總體而言,我們認為錢包應用程序的開發者應該始終假設外部傳入的數據是不可信的。開發者應該仔細選擇向用戶展示哪些信息,並驗證這些信息的合法性。除此之外,用戶也應通過對每個未知的交易請求保持懷疑的態度來守好自己安全上的「一畝三分地」。

DApp
錢包
智能合約
開發者
Web3.0
Uniswap
技術
安全
歡迎加入Odaily官方社群