文/Lisa & Kong
近期,我們發現多起關于eth_sign簽名的釣魚事件。
當我們連接錢包后并點擊 Claim 后,彈出一個簽名申請框,同時 MetaMask 顯示了一個紅色提醒警告,而光從這個彈窗上無法辨別要求簽名的到底是什么內容。
其實這是一種非常危險的簽名類型,基本上就是以太坊的“空白支票”。通過這個釣魚,騙子可以使用您的私鑰簽署任何交易。
除此之外,還有一種釣魚:在你拒絕上述的 sign 后,它會在你的 MetaMask 自動顯示另一個簽名框,趁你沒注意就騙到你的簽名。而看看簽名內容,使用了 SetApprovalForAll 方法,同時 Approved asset 的目標顯示為 All of your NFT,也就是說,一旦你簽名,騙子就可以毫無節制地盜走你的所有 NFT。如下:
慢霧:正協助Poly Network追查攻擊者,黑客已實現439萬美元主流資產變現:7月2日消息,慢霧首席信息安全官23pds在社交媒體發文表示,慢霧團隊正在與Poly Network官方一起努力追查攻擊者,并已找到一些線索。黑客目前已實現價值439萬美元的主流資產變現。[2023/7/2 22:13:24]
我們使用 MistTrack 來分析下騙子地址:
0xa594f48e80ffc8240f2f28d375fe4ca5379babc7
通過分析,騙子多次調用 SetApprovalForAll 盜取用戶資產,騙子地址目前已收到 33 個 NFT,售出部分后獲得超 4 ETH。
回到正題,我們來研究下這種釣魚方法。首先,我們看看 MetaMask 官方是如何說明的:
慢霧:去中心化期權協議Acutus的ACOWriter合約存在外部調用風險:據慢霧區消息,2022年3月29日,Acutus的ACOWriter合約遭受攻擊,其中_sellACOTokens函數中外部調用用到的_exchange和exchangeData參數均為外部可控,攻擊者可以通過此漏洞進行任意外部調用。目前攻擊者利用該手法已經盜取了部分授權過該合約的用戶的資產約72.6萬美金。慢霧安全團隊提醒使用過該合約的用戶請迅速取消對該合約的授權以規避資產被盜風險。[2022/3/29 14:25:07]
也就是說,MetaMask 目前有六種簽名方法(例如 personal_sign),只有一種方式會出現 MetaMask 警告,發生在 eth_sign 的簽名情況下,原因是 eth_sign 方法是一種開放式簽名方法,它允許對任意 Hash 進行簽名,這意味著它可用于對交易或任何其他數據進行簽名,從而構成危險的網絡釣魚風險。
慢霧:DOD合約中的BUSD代幣被非預期取出,主要是DOD低價情況下與合約鎖定的BUSD將產生套利空間:據慢霧區情報,2022 年 3 月 10 日, BSC 鏈上的 DOD 項目中鎖定的 BUSD 代幣被非預期的取出。慢霧安全團隊進行分析原因如下:
1. DOD 項目使用了一種特定的鎖倉機制,當 DOD 合約中 BUSD 數量大于 99,999,000 或 DOD 銷毀數量超過 99,999,000,000,000 或 DOD 總供應量低于 1,000,000,000 時將觸發 DOD 合約解鎖,若不滿足以上條件,DOD 合約也將在五年后自動解鎖。DOD 合約解鎖后的情況下,用戶向 DOD 合約中轉入指定數量的 DOD 代幣后將獲取該數量 1/10 的 BUSD 代幣,即轉入的 DOD 代幣數量越多獲得的 BUSD 也越多。
2. 但由于 DOD 代幣價格較低,惡意用戶使用了 2.8 個 BNB 即兌換出 99,990,000 個 DOD。
3. 隨后從各個池子中閃電貸借出大量的 BUSD 轉入 DOD 合約中,以滿足合約中 BUSD 數量大于 99,999,000 的解鎖條件。
4. 之后只需要調用 DOD 合約中的 swap 函數,將持有的 DOD 代幣轉入 DOD 合約中,既可取出 1/10 轉入數量的 BUSD 代幣。
5. 因此 DOD 合約中的 BUSD 代幣被非預期的取出。
本次 DOD 合約中的 BUSD 代幣被非預期取出的主要原因在于項目方并未考慮到 DOD 低價情況下與合約中鎖定的 BUSD 將產生套利空間。慢霧安全團隊建議在進行經濟模型設計時應充分考慮各方面因素帶來的影響。[2022/3/10 13:48:45]
根據 MetaMask 官方文檔說明,eth_sign 方法是可以對任意哈希進行簽名的,而我們在簽署一筆交易時本質上也是對一串哈希進行簽名,只不過這中間的編碼過程都由 MetaMask 替我們處理了。我們可以再簡單回顧下從編碼到交易廣播的過程:
慢霧:BXH于BSC鏈被盜的ETH、BTC類資產已全部跨鏈轉至相應鏈:11月3日消息,10月30日攻擊BXH的黑客(BSC: 0x48c94305bddfd80c6f4076963866d968cac27d79)在洗幣過程中,多次使用了 AnySwap、PancakeSwap、Ellipsis 等兌換平臺,其中部分 ETH 代幣被兌換成 BTC。此外,黑客現已將 13304.6 ETH、642.88 BTCB 代幣從 BSC 鏈轉移到 ETH、BTC 鏈,目前,初始黑客獲利地址仍有 15546 BNB 和價值超 3376 萬美元的代幣。慢霧 AML 將持續監控被盜資金的轉移,拉黑攻擊者控制的所有錢包地址,提醒交易所、錢包注意加強地址監控,避免相關惡意資金流入平臺。[2021/11/3 6:28:49]
在進行交易廣播前,MetaMask 會獲取我們轉賬的對象(to)、轉賬的金額(value)、附帶的數據(data),以及 MetaMask 自動幫我們獲取并計算的 nonce、gasPrice、gasLimit 參數進行 RLP 編碼得到原始交易內容(rawTransaction)。如果是合約調用,那么 to 即為合約地址,data 即為調用數據。
慢霧: 警惕比特幣RBF風險:據BitMEX消息,比特幣于區塊高度666833出現陳腐區塊,并產生了一筆 0.00062063 BTC 的雙花交易。根據 BitMEX提供的交易內容來看,雙花的兩筆交易的nSequence字段的值都小于0xffffffff -1。慢霧安全團隊初步認為此次雙花交易有可能是比特幣中的RBF交易。[2021/1/20 16:38:01]
rlp = require('rlp');// Use non-EIP115 standardconst transaction = { nonce: '', gasPrice: '', gasLimit: '', to: '0x', value: '', data: '0x'};// RLP encodeconst rawTransaction = rlp.encode([transaction.nonce, transaction.gasPrice, transaction.gasLimit, transaction.to, transaction.value, transaction.data]);隨后再對此內容進行 keccak256 哈希后得到一串 bytes32 的數據就是所需要我們簽名的數據了。
// keccak256 encodeconst msgHex = rawTransaction.toString('hex');const msgHash = Web3.utils.keccak256('0x'+ msgHex);我們使用 MetaMask 對這串數據簽名后就會得到 r, s, v 值,用這三個值再與 nonce/gasPrice/gasLimit/to/value/data 進行一次 RLP 編碼即可得到簽名后的原始交易內容了,這時候就可以廣播發出交易了。
rlp = require('rlp');const transaction = { nonce: '', gasPrice: '', gasLimit: '', to: '', value: '', data: '', v: '', r: '', s: ''};// RLP encodeconst signedRawTransaction = rlp.encode([transaction.nonce, transaction.gasPrice, transaction.gasLimit, transaction.to, transaction.value, transaction.data, transaction.v, transaction.r, transaction.s]);而如上所述,eth_sign 方法可以對任意哈希進行簽名,那么自然可以對我們簽名后的 bytes32 數據進行簽名。因此攻擊者只需要在我們連接 DApp 后獲取我們的地址對我們賬戶進行分析查詢,即可構造出任意數據(如:native 代幣轉賬,合約調用)讓我們通過 eth_sign 進行簽名。
這種釣魚方式對用戶會有很強的迷惑性,以往我們碰到的授權類釣魚在 MetaMask 會給我直觀的展示出攻擊者所要我們簽名的數據。如下所示,MetaMask 展示出了此釣魚網站誘導用戶將 NFT 授權給惡意地址。
而當攻擊者使用 eth_sign 方法讓用戶簽名時,如下所示,MetaMask 展示的只是一串 bytes32 的哈希。
總結
本文主要介紹 eth_sign 簽名方式的釣魚手法。雖然在簽名時 MetaMask 會有風險提示,但若結合釣魚話術干擾,沒有技術背景的普通用戶很難防范此類釣魚。建議用戶在遇到此類釣魚時提高警惕, 認準域名,仔細檢查簽名數據,必要時可以安裝安全插件,如:RevokeCash、ScamSniffer 等,同時注意插件提醒。
慢霧科技
個人專欄
閱讀更多
寧哥的web3筆記
金色財經 龐鄴
DoraFactory
金色財經Maxwell
新浪VR-
Foresight News
Footprint
元宇宙之道
Beosin
SmartDeerCareer
本文專注于分布式賬本技術及Stella項目的運行效果。分布式賬本技術(DLT)是一套記錄數據的工具,如資產持有量或金融交易,允許計算機網絡在沒有單一中央管理系統的情況下進行驗證和存儲更新.
1900/1/1 0:00:00據 CoinDesk 報道,根據 Coda Labs 委托進行的一項新調查數據顯示,游戲玩家(定義為每月至少玩兩次視頻游戲的人)很了解加密貨幣和游戲,其中 89% 的人知道比特幣.
1900/1/1 0:00:00隨著NFT市場的發展,很多大型項目去年的交易量達到了數十億美元,還有一些項目影響力不斷上升。他們當中的一部分已經吸引了Web3和傳統公司的大量關注.
1900/1/1 0:00:002021年6月10日,#7523號CryptoPunks NFT頭像以1175萬美元拍出,一張電子圖片為何能拍得如此高價?且聽娓娓道來.
1900/1/1 0:00:00在市場下行的今天,元宇宙和NFT的結合依然保持著極高的熱度。其中人們對于元宇宙的好奇心和追捧不亞于2017年市場對于區塊鏈和Token的關注.
1900/1/1 0:00:00NFTFi 是去中心化金融(DeFi)和 NFTs 的交集。這個新領域為收藏家們解鎖了一系列操作行動:以你的 NFT 為抵押進行貸款。以 3 個月分期付款的方式支付 NFT.
1900/1/1 0:00:00