您的錢包安全嗎?黑客如何利用許可證、Uniswap Permit2 和簽名進行釣魚攻擊。

新手Sep 24, 2024
本文探討使用加密錢包所涉及的安全風險,特別關注利用Permit、Uniswap Permit2和其他授權簽署方法進行釣魚攻擊的情況。
您的錢包安全嗎?黑客如何利用許可證、Uniswap Permit2 和簽名進行釣魚攻擊。

我記得群組中有人曾分享過一句智慧的話:「如果你不知道是誰在創造利潤,那麼你就是在創造利潤。」這句話讓我印象深刻。同樣的原則也適用於使用加密錢包的安全性。如果你不確定某個特定操作包含什麼,那麼你所做的每一次鏈上互動或簽名都可能會冒著損失錢包資產的風險。

最近,Scam Sniffer發布了一份2024年中期的釣魚郵件報告:僅在今年上半年,就有26萬名受害者在EVM鏈(基於以太坊的鏈)上受到釣魚攻擊,導致損失總額達3.14億美元。從這個角度來看,這已經超過了2023年所有釣魚攻擊造成的2.95億美元損失,而這個數字只用了六個月就達到了,如下圖所示。

該報告強調,大多數ERC20代幣被盜事件發生在簽署釣魚簽名,如許可證(離線授權簽名)、增加授權額(擴大授權限額)和Uniswap許可2。釣魚攻擊顯然仍然是鏈上安全的一個重大漏洞。

幾天前,一個朋友遇到了一個問題。兩個月前的6月14日,他們從他們的Coinbase錢包轉了三筆款項到Binance(以太坊鏈轉帳)。第一筆轉帳成功了,但其他兩筆一直沒有到帳,現在已經過了兩個月。可能出了什麼問題呢?

我在Etherscan上檢查了交易記錄,只找到了一筆轉帳,沒有其他兩筆的蹤跡,如下圖所示。

更仔細地查看了6月14日的所有鏈上交易後,我確實找到了三次轉帳嘗試,但最後兩次被標記為失敗的交易,如下圖所示。

然後,我點擊了其中一個失敗的交易(標記為“失敗”),以了解出了什麼問題。錯誤訊息顯示,“在合約執行期間發生錯誤。”根據Etherscan的官方文檔,這種類型的錯誤不應導致錢包中的資產損失。在這種情況下,代幣從發送者的錢包中永遠不會離開,但是燃氣費仍然會被扣除。如下圖所示。

要解决这种问题,需要确认以下内容:

-檢查當天是否實際轉移或遺失了錢包中的資金(即,如果失敗的交易沒有導致資金返回到錢包)。

-如果确认资产已转移或丢失,您可能需要联系相关平台的客户支持。在这种情况下,最好联系负责发送或发起提款的平台,因为接收平台或地址无法解决此问题。

鑒於此,我通常的建議是,最好保持詳細的交易記錄,例如使用 Excel 追蹤您的日常交易(買入/賣出)和現金流(收入/支出)。這樣,如果出現任何問題,您可以將記錄與鏈上交易記錄進行交叉驗證。我自己實際上也保留這樣的記錄,詳細記錄每一筆交易。我還在某些交易上添加了自己的經驗或想法的註釋。

目前,問題似乎大部分被理解。然而,在查看鏈上交易歷史時,我發現這位朋友的錢包出現了更嚴重的問題——它成為了駭客的目標!

發生了什麼事?讓我們仔細看一看(如下圖所示):

讓我們首先看一下圖像中的紅色框(一個合法的交易):

錢包擁有者剛完成了一筆價值 10,000 美元的交換,並將 USDT 轉移到以 0x8F 開頭並以 f103 結尾的錢包。

現在,檢查綠色框(一筆釣魚交易):

立即之後,駭客創建了幾筆假交易。有趣的是,駭客的錢包地址也以0x8F開頭,以f103結尾。

讓我們更仔細地比較錢包地址:

錢包擁有者的真實地址是:

0x8F773C2E1bF81cbA8ee71CBb8d33249Be6e5f103

黑客的錢包地址是:

0x8F7cCF79d497feDa14eD09F55d2c511001E5f103

0x8F776d5623F778Ea061efcA240912f9643fdf103

注意問題嗎?這些地址的前四個和後四個字符是相同的,使它們在快速瞥一眼時看起來幾乎相同。如果您直接從交易歷史中複製並粘貼地址而不仔細檢查,您很容易就會把錢直接發送給駭客。

因此,很明顯這個錢包確實是駭客的目標,試圖釣魚資產。更重要的是,交易哈希頁面證實了這一點——交易操作被標記為Fake_Phishing,毫無疑問這是一個駭客的地址。請參見下面的圖片。

小貼士:為什麼您無法在Etherscan上看到無效交易或零值轉帳?如何將以太坊瀏覽器切換為簡體中文?

默認情況下,Etherscan隱藏無效交易和零值轉賬。如果您想查看它們,只需轉到Etherscan的設置頁面並啟用高級選項。同樣地,如果您希望使用簡體中文界面,也可以在設置中進行調整。參考下面的圖片。或者,您還可以使用像Oklink這樣的第三方多鏈探測器,它也支持簡體中文。

錢包安全性絕對需要密切關注,特別是對於持有重要資產(超過100萬美元)的錢包。最好根據資金的目的將資金分配到不同的錢包中,以提高安全性。以下是我個人如何將錢包組織成層次:

第一層級:在蘋果手機上設置的冷錢包,嚴格用於長期存儲。它保持離線狀態,從未用於任何交易或轉移。我計劃至少持有這些資產10年而不動它們。如果您想使用冷錢包進行交易,可以考慮通過可靠渠道(如Trezor,Ledger等)購買知名硬體錢包。

Tier 2:較大金額的熱錢包。我使用 Trust Wallet,並未授予任何dApp權限。此錢包僅用於在我的錢包之間轉移和提取或轉賬至Binance。

第三層:數十個小錢包,有些是為了測試目的(例如與新項目互動以嘗試其功能或偶爾參與空投),而其他一些則用於購買山寨幣或梗圖代幣(雖然近年來我做得較少)。每個錢包只存放少量資金,範圍從幾百到幾千美元不等。對於這些錢包,我對授權和簽名更放鬆,即使有一個被入侵了,也沒什麼大不了的。管理所有這些錢包可能會有些麻煩,但為了增加安全性,這是值得的。

總結起來,每個人在管理錢包時都有自己的偏好,這取決於他們的情況。經驗豐富的加密貨幣用戶通常更喜歡將資產保留在區塊鏈上,但對於大多數新手來說,將資產(低於10萬美元)存儲在像幣安或OKX這樣的主要平台上實際上更安全。

現在,讓我們走過一些常見的釣魚策略:

1.允許釣魚攻擊

首先,讓我們解釋一些基本概念:當您在以太坊上轉移代幣時,通常會使用代幣的智能合約中的Transfer函數或Transfer From函數進行交互。當所有者直接授權將代幣轉移給另一個地址時,使用的是Transfer函數,而Transfer From允許第三方將代幣從一個地址移動到另一個地址。

這是許可證釣魚攻擊的工作原理:

首先,攻擊者欺騙受害者點擊釣魚連結或訪問假網站,促使他們簽署錢包交易(離線)。

然後,攻擊者使用許可函數獲得授權。

最後,攻擊者呼叫Transfer From函數移動受害者的資產,完成釣魚攻擊。

這種網路釣魚方法有一個關鍵特徵:攻擊者獲得對您的簽名授權的訪問許可權后,他們可以執行“允許”和“轉移自”操作。需要注意的重要一點是,授權不會顯示在受害者的鏈上交易歷史記錄中,但它會在攻擊者的地址活動中可見。

通常,這些類型的簽名釣魚攻擊是一次性事件,這意味著它們不構成持續的釣魚威脅。簡單來說:簽名釣魚攻擊不能竊取您錢包的助記詞(或私鑰)。每次釣魚嘗試只允許黑客使用授權一次,並且僅影響您授權的代幣和區塊鏈(例如,如果您授權了USDT,黑客只能拿走您的USDT)。換句話說,單個釣魚簽名給黑客提供了一次機會,除非您在未來犯下再次簽名的錯誤,給他們另一次利用您錢包的機會。


(圖片來源:bocaibocai@wzxznl)

2. Uniswap Permit2釣魚攻擊

這種釣魚方法與先前提到的許可攻擊類似,都涉及到離鏈簽名釣魚。Uniswap Permit2是Uniswap於2022年推出的智能合約。根據Uniswap的說法,它是一個代幣批准合約,旨在允許在不同應用程序之間共享和管理代幣權限,提供更無縫、更具成本效益和更安全的用戶體驗。現在許多項目已經集成了Permit2。

最近,我讀了幾篇由bocaibocai(X@wzxznl) 深入研究Permit2钓鱼攻击的机制。以下是一个简要概述:

當您想在去中心化交易所(DEX)上進行交換時,傳統流程要求您首先批准該DEX訪問您的代幣,然後再進行交換。這通常意味著用戶需要支付兩次燃氣費,這對用戶來說可能不太方便。 Permit2通過跳過額外的批准步驟來簡化此流程,從而有效降低交互成本,改善整體用戶體驗。

Permit2本質上是用戶和dApps之間的中間商。一旦用戶授權Permit2,任何與Permit2集成的dApp都可以共享該授權限制。這不僅可以降低用戶成本,簡化流程,還可以幫助dApps吸引更多用戶和流動性,從而提高體驗。

原本看似雙贏的局面也可能變成兩難。傳統上,授權和資金轉移都需要用戶進行鏈上操作。但是使用 Permit2,用戶的互動被減少到鏈外簽名,而像 Permit2 合約或與之集成的項目等中介機構負責鏈上操作。這種轉變通過減少用戶的鏈上摩擦而帶來優勢,但也帶來了風險。鏈外簽名是用戶常常降低防禦的地方。例如,當連接錢包到某些 dApps 時,用戶被提示簽署某些內容,但大多數人並不仔細檢查或理解簽名內容(通常看起來像一團代碼)。這種缺乏審慎可能是危險的。

另一个主要的问题是,Permit2默认授权访问您的全部代币余额,无论您计划交换多少。虽然像MetaMask这样的钱包允许您设置自定义限制,但大多数用户可能只会点击“最大”或使用默认设置。Permit2的默认设置是无限授权,这特别危险。请参考下面的图片。

這基本上意味著,如果您曾與Uniswap互動並授權給Permit2合約,則您容易受到這種釣魚詐騙的影響。

例如,假設小李使用Uniswap並授權無限量的USDT給Permit2合約。稍後,在進行常規錢包交易時,小李無意中陷入了涉及Permit2的釣魚陷阱。一旦駭客獲得了小李的簽名,他們就可以使用它對Permit2合約執行兩個關鍵操作——許可和從中轉移——以竊取小李的資產。

這是釣魚攻擊的工作原理:

在釣魚嘗試之前,用戶已經使用了Uniswap並向Uniswap Permit2合約授予了代幣權限(默認情況下是無限額度)。

然後,攻擊者創建一個虛假的網路釣魚連結或網站,誘騙用戶簽署交易。捕獲簽名后,駭客將獲得所需的所有資訊(此步驟類似於允許網路釣魚)。

使用這個,攻擊者呼叫了Permit2合約中的Permit函數,完成了授權。

最後,攻擊者在Permit2合約中調用Transfer From函數,轉移受害者的資產,完成釣魚攻擊。

通常,這些攻擊涉及多個接收地址。有些僅用於釣魚行動(甚至可能被製作成與受害者的地址相似的字符開頭和結尾),而其他則屬於有組織的釣魚圈子(例如,DaaS提供商)。針對加密錢包的釣魚行業似乎已發展成一個完整的地下市場。請參見下面的圖片。

你如何保護自己免受 Permit 和 Permit2 的釣魚攻擊?

一個選擇是使用瀏覽器安全插件,例如Scamsniffer(我一直在我的Google Chrome上使用這個插件)來阻止釣魚連結。此外,您可以定期使用Revoke Cash等工具檢查並撤銷任何不必要或可疑的授權或簽名。請參考下面的圖片示例。

您還可以使用 Scamsnizer 專門為 Uniswap Permit2 設計的專用授權管理工具來定期審查您的授權。如果有任何異常,請務必立即撤銷許可權。請參見下圖。

也就是說,最關鍵的方面是保持強大的安全意識。避免訪問未知網站或連結,並且在與dApp交互時,請始終仔細檢查您的授權內容。

(圖片來源: bocaibocai@wzxznl)

快速提示:您如何判斷錢包簽名是用於許可證還是許可證2?

簽名時,您將在授權確認視窗中看到一些詳細資訊。您可以通過查看關鍵欄位來識別簽名的類型,如下圖所示:

擁有者(授權地址);花費者(接收授權地址);價值(授權金額);nonce(唯一隨機數);截止日期(到期日期);

3.索取钓鱼攻击

這種類型的釣魚行騙非常常見。例如,如果您經常瀏覽X(以前是Twitter),您可能會遇到提供“免費空投”的消息。有時,您甚至可能會發現神秘地將隨機的NFTs放入您的錢包(其中可能包含一個網站鏈接)。

如果您點擊了一個釣魚網站並繼續進行 索賠在行动中,您钱包中的资产可能会立即被黑客盗取。

如何保護自己?

首先,不要被“太好以至于不可思議”的優惠所誘惑(避免點擊可疑的鏈接或接受未知的免費NFT和空投)。其次,在執行任何索取操作之前,請始終仔細檢查所使用的網站,確保它是合法的官方網站。

4. 相似地址轉賬釣魚

今年5月3日,一名加密貨幣大鯨魚成為了一個類似地址的釣魚攻擊的受害者,失去了1,155 WBTC(當時價值約7000萬美元)。

SlowMist先前詳細分析了這一事件,因此我不會在這裡重複具體細節。如果你感興趣,可以在這裡重新查看案例:

https://mp.weixin.qq.com/s/mQch5pEg1fmJsMbiOClwOg

這種類型的釣魚行為相對簡單:

首先,駭客生成大量與受害者預期地址非常相似的欺騙性釣魚地址,通常匹配前4個和後6個字符。

接下來,他們部署一個批次程式來監控受害者的鏈上活動,然後在預定交易之前通過發送一個類似的地址來發動釣魚攻擊。

最後,當受害者進行轉帳時,駭客會立即使用類似的地址進行交易。這樣,偽造的地址就會出現在用戶的交易歷史中。請參見下面的圖片。

因為許多使用者習慣從他們的錢包歷史複製交易詳細資料,他們可能會看到跟自己非常接近的釣魚交易,卻沒有意識到他們複製了錯誤的地址。若不仔細檢查,他們可能會錯誤地將1,155 WBTC誤送到釣魚地址。

你如何防止這種情況?

首先,在您的錢包地址簿中保存常用地址(或將其加入白名單),這樣下次您可以從列表中選擇正確的地址。其次,在轉賬之前,請始終仔細檢查完整的地址,不要僅依賴開頭或結尾的幾個字符。在進行大額轉賬時,建議先發送一筆小額測試交易,以確保一切正確。

5. 授權簽名釣魚

之前提到的許可證、Uniswap 許可證2和索取方法都屬於授權釣魚的範疇。實際上,黑客可以利用多種方式來利用錢包授權,例如使用批准(授權讓像Uniswap這樣的平台使用您的USDT)和增加授權額度(提高可支出的限額)等。

釣魚過程通常包括攻擊者設置假鏈接或網站,甚至黑客入侵官方項目網站並嵌入惡意軟件,這會誘使用戶點擊並無意中授予錢包授權。

討論的五種網路釣魚方法只是一些更常見的方法。駭客不斷想出新的和創造性的攻擊方法。俗話說,「駭客永遠領先一步。這意味著錢包安全是一個持續的挑戰,使用者需要時刻保持警惕。

免責聲明:

  1. 本文章轉載自 [话李话外 with title “你的錢包還安全嗎?黑客是如何利用Permit、Uniswap Permit2、授權簽名進行釣魚的(Is your wallet safe? How hackers exploit Permit, Uniswap Permit2, and signatures for phishing.)”, All copyrights belong to the original author [話李話外]. If there are objections to this reprint, please contact the Gate 學習團隊將儘快處理它。

  2. 責任聲明: 本文所表達的觀點和意見僅由作者本人提出,並不構成任何投資建議。

  3. 文章的翻譯由Gate Learn團隊完成。除非另有說明,否則為機器翻譯。Gate.io,複製、分發或抄襲翻譯的文章是被禁止的。

您的錢包安全嗎?黑客如何利用許可證、Uniswap Permit2 和簽名進行釣魚攻擊。

新手Sep 24, 2024
本文探討使用加密錢包所涉及的安全風險,特別關注利用Permit、Uniswap Permit2和其他授權簽署方法進行釣魚攻擊的情況。
您的錢包安全嗎?黑客如何利用許可證、Uniswap Permit2 和簽名進行釣魚攻擊。

我記得群組中有人曾分享過一句智慧的話:「如果你不知道是誰在創造利潤,那麼你就是在創造利潤。」這句話讓我印象深刻。同樣的原則也適用於使用加密錢包的安全性。如果你不確定某個特定操作包含什麼,那麼你所做的每一次鏈上互動或簽名都可能會冒著損失錢包資產的風險。

最近,Scam Sniffer發布了一份2024年中期的釣魚郵件報告:僅在今年上半年,就有26萬名受害者在EVM鏈(基於以太坊的鏈)上受到釣魚攻擊,導致損失總額達3.14億美元。從這個角度來看,這已經超過了2023年所有釣魚攻擊造成的2.95億美元損失,而這個數字只用了六個月就達到了,如下圖所示。

該報告強調,大多數ERC20代幣被盜事件發生在簽署釣魚簽名,如許可證(離線授權簽名)、增加授權額(擴大授權限額)和Uniswap許可2。釣魚攻擊顯然仍然是鏈上安全的一個重大漏洞。

幾天前,一個朋友遇到了一個問題。兩個月前的6月14日,他們從他們的Coinbase錢包轉了三筆款項到Binance(以太坊鏈轉帳)。第一筆轉帳成功了,但其他兩筆一直沒有到帳,現在已經過了兩個月。可能出了什麼問題呢?

我在Etherscan上檢查了交易記錄,只找到了一筆轉帳,沒有其他兩筆的蹤跡,如下圖所示。

更仔細地查看了6月14日的所有鏈上交易後,我確實找到了三次轉帳嘗試,但最後兩次被標記為失敗的交易,如下圖所示。

然後,我點擊了其中一個失敗的交易(標記為“失敗”),以了解出了什麼問題。錯誤訊息顯示,“在合約執行期間發生錯誤。”根據Etherscan的官方文檔,這種類型的錯誤不應導致錢包中的資產損失。在這種情況下,代幣從發送者的錢包中永遠不會離開,但是燃氣費仍然會被扣除。如下圖所示。

要解决这种问题,需要确认以下内容:

-檢查當天是否實際轉移或遺失了錢包中的資金(即,如果失敗的交易沒有導致資金返回到錢包)。

-如果确认资产已转移或丢失,您可能需要联系相关平台的客户支持。在这种情况下,最好联系负责发送或发起提款的平台,因为接收平台或地址无法解决此问题。

鑒於此,我通常的建議是,最好保持詳細的交易記錄,例如使用 Excel 追蹤您的日常交易(買入/賣出)和現金流(收入/支出)。這樣,如果出現任何問題,您可以將記錄與鏈上交易記錄進行交叉驗證。我自己實際上也保留這樣的記錄,詳細記錄每一筆交易。我還在某些交易上添加了自己的經驗或想法的註釋。

目前,問題似乎大部分被理解。然而,在查看鏈上交易歷史時,我發現這位朋友的錢包出現了更嚴重的問題——它成為了駭客的目標!

發生了什麼事?讓我們仔細看一看(如下圖所示):

讓我們首先看一下圖像中的紅色框(一個合法的交易):

錢包擁有者剛完成了一筆價值 10,000 美元的交換,並將 USDT 轉移到以 0x8F 開頭並以 f103 結尾的錢包。

現在,檢查綠色框(一筆釣魚交易):

立即之後,駭客創建了幾筆假交易。有趣的是,駭客的錢包地址也以0x8F開頭,以f103結尾。

讓我們更仔細地比較錢包地址:

錢包擁有者的真實地址是:

0x8F773C2E1bF81cbA8ee71CBb8d33249Be6e5f103

黑客的錢包地址是:

0x8F7cCF79d497feDa14eD09F55d2c511001E5f103

0x8F776d5623F778Ea061efcA240912f9643fdf103

注意問題嗎?這些地址的前四個和後四個字符是相同的,使它們在快速瞥一眼時看起來幾乎相同。如果您直接從交易歷史中複製並粘貼地址而不仔細檢查,您很容易就會把錢直接發送給駭客。

因此,很明顯這個錢包確實是駭客的目標,試圖釣魚資產。更重要的是,交易哈希頁面證實了這一點——交易操作被標記為Fake_Phishing,毫無疑問這是一個駭客的地址。請參見下面的圖片。

小貼士:為什麼您無法在Etherscan上看到無效交易或零值轉帳?如何將以太坊瀏覽器切換為簡體中文?

默認情況下,Etherscan隱藏無效交易和零值轉賬。如果您想查看它們,只需轉到Etherscan的設置頁面並啟用高級選項。同樣地,如果您希望使用簡體中文界面,也可以在設置中進行調整。參考下面的圖片。或者,您還可以使用像Oklink這樣的第三方多鏈探測器,它也支持簡體中文。

錢包安全性絕對需要密切關注,特別是對於持有重要資產(超過100萬美元)的錢包。最好根據資金的目的將資金分配到不同的錢包中,以提高安全性。以下是我個人如何將錢包組織成層次:

第一層級:在蘋果手機上設置的冷錢包,嚴格用於長期存儲。它保持離線狀態,從未用於任何交易或轉移。我計劃至少持有這些資產10年而不動它們。如果您想使用冷錢包進行交易,可以考慮通過可靠渠道(如Trezor,Ledger等)購買知名硬體錢包。

Tier 2:較大金額的熱錢包。我使用 Trust Wallet,並未授予任何dApp權限。此錢包僅用於在我的錢包之間轉移和提取或轉賬至Binance。

第三層:數十個小錢包,有些是為了測試目的(例如與新項目互動以嘗試其功能或偶爾參與空投),而其他一些則用於購買山寨幣或梗圖代幣(雖然近年來我做得較少)。每個錢包只存放少量資金,範圍從幾百到幾千美元不等。對於這些錢包,我對授權和簽名更放鬆,即使有一個被入侵了,也沒什麼大不了的。管理所有這些錢包可能會有些麻煩,但為了增加安全性,這是值得的。

總結起來,每個人在管理錢包時都有自己的偏好,這取決於他們的情況。經驗豐富的加密貨幣用戶通常更喜歡將資產保留在區塊鏈上,但對於大多數新手來說,將資產(低於10萬美元)存儲在像幣安或OKX這樣的主要平台上實際上更安全。

現在,讓我們走過一些常見的釣魚策略:

1.允許釣魚攻擊

首先,讓我們解釋一些基本概念:當您在以太坊上轉移代幣時,通常會使用代幣的智能合約中的Transfer函數或Transfer From函數進行交互。當所有者直接授權將代幣轉移給另一個地址時,使用的是Transfer函數,而Transfer From允許第三方將代幣從一個地址移動到另一個地址。

這是許可證釣魚攻擊的工作原理:

首先,攻擊者欺騙受害者點擊釣魚連結或訪問假網站,促使他們簽署錢包交易(離線)。

然後,攻擊者使用許可函數獲得授權。

最後,攻擊者呼叫Transfer From函數移動受害者的資產,完成釣魚攻擊。

這種網路釣魚方法有一個關鍵特徵:攻擊者獲得對您的簽名授權的訪問許可權后,他們可以執行“允許”和“轉移自”操作。需要注意的重要一點是,授權不會顯示在受害者的鏈上交易歷史記錄中,但它會在攻擊者的地址活動中可見。

通常,這些類型的簽名釣魚攻擊是一次性事件,這意味著它們不構成持續的釣魚威脅。簡單來說:簽名釣魚攻擊不能竊取您錢包的助記詞(或私鑰)。每次釣魚嘗試只允許黑客使用授權一次,並且僅影響您授權的代幣和區塊鏈(例如,如果您授權了USDT,黑客只能拿走您的USDT)。換句話說,單個釣魚簽名給黑客提供了一次機會,除非您在未來犯下再次簽名的錯誤,給他們另一次利用您錢包的機會。


(圖片來源:bocaibocai@wzxznl)

2. Uniswap Permit2釣魚攻擊

這種釣魚方法與先前提到的許可攻擊類似,都涉及到離鏈簽名釣魚。Uniswap Permit2是Uniswap於2022年推出的智能合約。根據Uniswap的說法,它是一個代幣批准合約,旨在允許在不同應用程序之間共享和管理代幣權限,提供更無縫、更具成本效益和更安全的用戶體驗。現在許多項目已經集成了Permit2。

最近,我讀了幾篇由bocaibocai(X@wzxznl) 深入研究Permit2钓鱼攻击的机制。以下是一个简要概述:

當您想在去中心化交易所(DEX)上進行交換時,傳統流程要求您首先批准該DEX訪問您的代幣,然後再進行交換。這通常意味著用戶需要支付兩次燃氣費,這對用戶來說可能不太方便。 Permit2通過跳過額外的批准步驟來簡化此流程,從而有效降低交互成本,改善整體用戶體驗。

Permit2本質上是用戶和dApps之間的中間商。一旦用戶授權Permit2,任何與Permit2集成的dApp都可以共享該授權限制。這不僅可以降低用戶成本,簡化流程,還可以幫助dApps吸引更多用戶和流動性,從而提高體驗。

原本看似雙贏的局面也可能變成兩難。傳統上,授權和資金轉移都需要用戶進行鏈上操作。但是使用 Permit2,用戶的互動被減少到鏈外簽名,而像 Permit2 合約或與之集成的項目等中介機構負責鏈上操作。這種轉變通過減少用戶的鏈上摩擦而帶來優勢,但也帶來了風險。鏈外簽名是用戶常常降低防禦的地方。例如,當連接錢包到某些 dApps 時,用戶被提示簽署某些內容,但大多數人並不仔細檢查或理解簽名內容(通常看起來像一團代碼)。這種缺乏審慎可能是危險的。

另一个主要的问题是,Permit2默认授权访问您的全部代币余额,无论您计划交换多少。虽然像MetaMask这样的钱包允许您设置自定义限制,但大多数用户可能只会点击“最大”或使用默认设置。Permit2的默认设置是无限授权,这特别危险。请参考下面的图片。

這基本上意味著,如果您曾與Uniswap互動並授權給Permit2合約,則您容易受到這種釣魚詐騙的影響。

例如,假設小李使用Uniswap並授權無限量的USDT給Permit2合約。稍後,在進行常規錢包交易時,小李無意中陷入了涉及Permit2的釣魚陷阱。一旦駭客獲得了小李的簽名,他們就可以使用它對Permit2合約執行兩個關鍵操作——許可和從中轉移——以竊取小李的資產。

這是釣魚攻擊的工作原理:

在釣魚嘗試之前,用戶已經使用了Uniswap並向Uniswap Permit2合約授予了代幣權限(默認情況下是無限額度)。

然後,攻擊者創建一個虛假的網路釣魚連結或網站,誘騙用戶簽署交易。捕獲簽名后,駭客將獲得所需的所有資訊(此步驟類似於允許網路釣魚)。

使用這個,攻擊者呼叫了Permit2合約中的Permit函數,完成了授權。

最後,攻擊者在Permit2合約中調用Transfer From函數,轉移受害者的資產,完成釣魚攻擊。

通常,這些攻擊涉及多個接收地址。有些僅用於釣魚行動(甚至可能被製作成與受害者的地址相似的字符開頭和結尾),而其他則屬於有組織的釣魚圈子(例如,DaaS提供商)。針對加密錢包的釣魚行業似乎已發展成一個完整的地下市場。請參見下面的圖片。

你如何保護自己免受 Permit 和 Permit2 的釣魚攻擊?

一個選擇是使用瀏覽器安全插件,例如Scamsniffer(我一直在我的Google Chrome上使用這個插件)來阻止釣魚連結。此外,您可以定期使用Revoke Cash等工具檢查並撤銷任何不必要或可疑的授權或簽名。請參考下面的圖片示例。

您還可以使用 Scamsnizer 專門為 Uniswap Permit2 設計的專用授權管理工具來定期審查您的授權。如果有任何異常,請務必立即撤銷許可權。請參見下圖。

也就是說,最關鍵的方面是保持強大的安全意識。避免訪問未知網站或連結,並且在與dApp交互時,請始終仔細檢查您的授權內容。

(圖片來源: bocaibocai@wzxznl)

快速提示:您如何判斷錢包簽名是用於許可證還是許可證2?

簽名時,您將在授權確認視窗中看到一些詳細資訊。您可以通過查看關鍵欄位來識別簽名的類型,如下圖所示:

擁有者(授權地址);花費者(接收授權地址);價值(授權金額);nonce(唯一隨機數);截止日期(到期日期);

3.索取钓鱼攻击

這種類型的釣魚行騙非常常見。例如,如果您經常瀏覽X(以前是Twitter),您可能會遇到提供“免費空投”的消息。有時,您甚至可能會發現神秘地將隨機的NFTs放入您的錢包(其中可能包含一個網站鏈接)。

如果您點擊了一個釣魚網站並繼續進行 索賠在行动中,您钱包中的资产可能会立即被黑客盗取。

如何保護自己?

首先,不要被“太好以至于不可思議”的優惠所誘惑(避免點擊可疑的鏈接或接受未知的免費NFT和空投)。其次,在執行任何索取操作之前,請始終仔細檢查所使用的網站,確保它是合法的官方網站。

4. 相似地址轉賬釣魚

今年5月3日,一名加密貨幣大鯨魚成為了一個類似地址的釣魚攻擊的受害者,失去了1,155 WBTC(當時價值約7000萬美元)。

SlowMist先前詳細分析了這一事件,因此我不會在這裡重複具體細節。如果你感興趣,可以在這裡重新查看案例:

https://mp.weixin.qq.com/s/mQch5pEg1fmJsMbiOClwOg

這種類型的釣魚行為相對簡單:

首先,駭客生成大量與受害者預期地址非常相似的欺騙性釣魚地址,通常匹配前4個和後6個字符。

接下來,他們部署一個批次程式來監控受害者的鏈上活動,然後在預定交易之前通過發送一個類似的地址來發動釣魚攻擊。

最後,當受害者進行轉帳時,駭客會立即使用類似的地址進行交易。這樣,偽造的地址就會出現在用戶的交易歷史中。請參見下面的圖片。

因為許多使用者習慣從他們的錢包歷史複製交易詳細資料,他們可能會看到跟自己非常接近的釣魚交易,卻沒有意識到他們複製了錯誤的地址。若不仔細檢查,他們可能會錯誤地將1,155 WBTC誤送到釣魚地址。

你如何防止這種情況?

首先,在您的錢包地址簿中保存常用地址(或將其加入白名單),這樣下次您可以從列表中選擇正確的地址。其次,在轉賬之前,請始終仔細檢查完整的地址,不要僅依賴開頭或結尾的幾個字符。在進行大額轉賬時,建議先發送一筆小額測試交易,以確保一切正確。

5. 授權簽名釣魚

之前提到的許可證、Uniswap 許可證2和索取方法都屬於授權釣魚的範疇。實際上,黑客可以利用多種方式來利用錢包授權,例如使用批准(授權讓像Uniswap這樣的平台使用您的USDT)和增加授權額度(提高可支出的限額)等。

釣魚過程通常包括攻擊者設置假鏈接或網站,甚至黑客入侵官方項目網站並嵌入惡意軟件,這會誘使用戶點擊並無意中授予錢包授權。

討論的五種網路釣魚方法只是一些更常見的方法。駭客不斷想出新的和創造性的攻擊方法。俗話說,「駭客永遠領先一步。這意味著錢包安全是一個持續的挑戰,使用者需要時刻保持警惕。

免責聲明:

  1. 本文章轉載自 [话李话外 with title “你的錢包還安全嗎?黑客是如何利用Permit、Uniswap Permit2、授權簽名進行釣魚的(Is your wallet safe? How hackers exploit Permit, Uniswap Permit2, and signatures for phishing.)”, All copyrights belong to the original author [話李話外]. If there are objections to this reprint, please contact the Gate 學習團隊將儘快處理它。

  2. 責任聲明: 本文所表達的觀點和意見僅由作者本人提出,並不構成任何投資建議。

  3. 文章的翻譯由Gate Learn團隊完成。除非另有說明,否則為機器翻譯。Gate.io,複製、分發或抄襲翻譯的文章是被禁止的。

即刻開始交易
註冊並交易即可獲得
$100
和價值
$5500
理財體驗金獎勵!