Home > 如何保障 Metamask 錢包安全 有效避免被盜 撤銷未知代幣授權( Revoke ) 完整教學

如何保障 Metamask 錢包安全 有效避免被盜 撤銷未知代幣授權( Revoke ) 完整教學

Written by To-CoinTeam

2022-06-10

Metamask 是目前以太坊和 EVM 鏈上最受歡迎的錢包,Metamask 除了瀏覽器還可以在手機上使用,操作很直覺簡單,也因為操作容易按一兩個按鍵錢就直接付出去了,或是一不小心就將代幣權限授權給騙子,去中心化的好處之一是抗審查,但也意味著當資產被盜時,駭客只有很低的機率會被抓到,所以如何預防被盜變得非常重要。本文也將詳細說明哪些 Metamask 的操作可能會有潛在被盜風險,以及如何定期檢查錢包授權權限,撤銷有安全疑慮的授權,在以太坊黑暗森林中保障自己的資產安全。

1. 簽署與授權

1.1 簽署( Sign )

簽署是錢包要跟 dAPP 互動前會做的動作,大部分會出現在連接錢包的時候,目的是要確認你是該地址所有人,上圖在 Debank 連接錢包為例,簽署後 Debank 就知道你是該地址持有者,也可以在訊息( 紅框處 ) 地方看到 Debank 為了認證身份才做簽署。

1.2 授權( Approve )

授權則是使用者將某一種/全部代幣調用權限授權給你要使用的 dAPP,並且有無限金額授權或是有限金額授權的分別,端看 dAPP 的合約設定。

以上圖在 Uniswap 的交易為例,在交易前 Uniswap 就要求將 CRV 授權給它才能進行後續兌換,Uniswap 預設是無上限授權,你可以在 “Edit permission” ( 橘框處 )的地方選擇“Custom Spend Limit”設定 Uniswap 合約可以調用的代幣數量上限,這樣即使 Uniswap 遭到駭客入侵,駭客也只有權限盜走上限內的代幣數量,由於蠻多 DeFi 都沒有設上限限制,所以在授權時輸入上限限制是一個能讓自己更加安全的方法。

錢包內資產被盜最常見的不是正派 DeFi 被盜反而是使用者不小心將代幣權限授權給駭客,經由釣魚網站或是 Discord 詐騙私訊等方式,授權的權限很高所以在每一個授權動作前一定要好好檢查你是授權給哪個合約或是使用者,上限多少。

以太幣( ETH ) v.s. 其他代幣被盜

以太坊的設計是唯有私鑰持有者才可以動用帳戶內的以太幣,如果今天駭客沒有拿到你的私鑰,他最多就只能藉由授權把帳戶內除以太幣外的代幣/ NFT全部轉走,所以如果帳戶被盜,可以用代幣轉移狀況來判斷是私鑰洩漏或是不小心將代幣權限授權給駭客。

2. 檢查錢包授權 撤銷可疑授權

有很多可以協助撤銷( Revoke ) 授權的網站,像是 Revoke.cash、Tin.network、Cointool 等都能查詢錢包共有哪些授權並協助取消授權,除了取消授權需要的鏈上交易費外,這些網站本身都是免費的,以下會用 Revoke.cash 為例說明如何撤銷授權。

Revoke.cash 支援以太坊、幣安智能鏈、Avax 等熱門區塊鏈( 下方綠箭頭處 ),進入網站後直接將錢包轉換到你要檢查的區塊鏈並連接網站,連接後會顯示目前該地址有哪些授權,以上圖為例這個地址共授權給 Compound( DAI ; 無限數量 )Aave( stETH ; 無限數量 ) Uniswap( USDC ; 無限數量 ),可以選擇直接撤銷( Revoke )或是修改授權上限:

2.1 撤銷授權( Revoke )

撤銷授權直接點 Revoke( 紅箭頭 )就會跑出撤銷交易,因為要改變鏈上狀態的原因,所以授權時需要交易手續費,撤銷也需要交易手續費。

2.2 授權( Approve )

修改授權上限直接填入上限數字並點選 Update( 咖啡箭頭 )即可,也需要交易手續費。

你可能會喜歡

訂閱電子報