寫在前面:關于以太坊錢包及DeFi應用,目前行業內普遍存在的一個安全隱患就是“代幣授權”,而且絕大多數情況下,這些應用都會默認要求你給予“無限授權”,這給用戶帶來便利的同時,也會埋下很大的安全隱患,因為如果合約存在問題,那么即便你沒有將資金存入到合約中,攻擊者也可以竊走你錢包內的資金。
那如何在體驗五花八門的DeFi新應用的同時,最大限度地保護自己呢?本文將會告訴你一種取消代幣授權的方式,
目標:學習如何撤銷以太坊錢包授權
技能復雜性:簡單
用時:5分鐘
ROI:無價(可以保護你的代幣)
你可能已經參與了幾十個DeFi應用,并在不知情的情況下授權這些應用無限訪問你的以太坊錢包資金,
你猜怎么著?除非你能關閉這些授權,否則這些應用就有能力這么干!
那如果其中一個合約被利用了怎么辦?或者這個DeFi應用變成了一個跑路騙局? 這意味著游戲結束,你會丟失資金。
但只要掌握一些技巧,你就可以保護自己。
例如使用新的地址,還比如經常檢查合約授權,并移除你不再使用或不信任的應用合約授權,
良好的牙齒衛生可以防止蛀牙,而良好的加密衛生可以幫助你保護財產,
竊取用戶資金的UniCats
上個月,一個名為UniCats的流動性挖礦專案啟動了,而這個所謂的DeFi專案最終被證明是欺詐性質專案,其部署者利用了“代幣無限授權”權限偷取了用戶的資金。
當交易者為追求新的收益機會,而將資金存入這個專案時,UniCat開發者取得了越來越多的代幣授權權限,直到他們選擇收網并開始竊取用戶的代幣資金,
正如研究員Alex Manuskin在上個月發布的一條有見解的推文所示,一位UniCat用戶因為授權了UniCats合約而損失了價值14萬美元的Uniswap代幣。
這是一個可怕的事件,而這個例子就是為了強調:作為一名以太坊用戶,為什么要重視智能合約權限,
因此,讓我們學習如何管理你的錢包權限,
如何撤銷以太坊錢包授權
幸運的是,以太坊社區有一些非常值得尊敬的開源貢獻者,他們經常會發布一些令人驚嘆的工具,其中就包括AlphaWallet的James Sangalli,他在今年早些時候發布了一個開源的ETH Allowance工具,
我們可以使用這個解決方案來輕松地撤銷代幣授權,流程如下所示:
1、使用Etherscan查找你想要撤銷的合約。
假設你最近與一個類似UniCat的惡意或劣質專案進行了互動,現在你想要撤銷授權,你需要確定該專案的合約地址并對其進行復制。使用Etherscan的“剪貼板”按鈕,可以讓這項工作變得簡單,
2、訪問ETH Allowance網站,你將看到下面所示的頁面。
3、連接你的以太坊錢包(通常,我們所使用的是流行的MetaMask瀏覽器錢包)。一旦你執行了這個操作,將會彈出已批準的智能合約串列,如下所示:
4、通過瀏覽器使用“查找“功能,粘貼并搜索你要移除的合約地址,為了簡單起見,我將簡單移除上面描述的第一個地址,它關聯到了OmiseGo的OMG代幣,當我點擊”撤銷“時,系統會提示我發送一筆撤銷交易,如下所示:
5、確認交易,一旦交易確認后,你的錢包就可以避免掉這個合約地址的風險了,
總結
并不是每一個代幣智能合約授權都是有漏洞的,有很多dapp在這一點上已經過了市場的考驗(比如Uniswap),而給這些應用授權,有助于我們充分利用它們。
但在我們所處的去中心化的生態系統中,我們不能將這種信任授予那些還沒有被證明,或沒有經過適當審計的專案,這就是為什么我們必須要自己處理問題,定期管理我們的智能合約權限,去除掉我們不再使用或不再信任的代幣授權,