錢包安全

錢包授權後,資產為什麼可能被自動轉走

區分連接錢包、簽署訊息、發送交易與代幣授權,並檢查及撤銷不再需要的 smart contract allowance。

錢包授權後,資產為什麼可能被自動轉走

連接 DApp 通常只是讓網站看到公開地址;代幣授權則是在鏈上允許某個 spender 或 smart contract,在指定額度內移動你的代幣。兩者完全不同。

四種動作要分清楚

  • **Connect:**網站取得公開地址。
  • **Sign message:**用私鑰對訊息簽名,內容不明時不可盲簽。
  • **Send transaction:**向網路送出會改變鏈上狀態的操作。
  • **Approve:**授予 spender 代幣 allowance。

無限額授權可減少重複操作,卻也放大惡意合約或合約遭攻擊時的暴露範圍。NFT 的 setApprovalForAll 可能影響整個系列。

為何 Disconnect 不夠?

在 DApp 介面中斷連線,不會刪除已寫入區塊鏈的 allowance。未設定到期日的權限,日後仍可能被使用。

檢查與撤銷

  1. 選擇正確網路。
  2. 由錢包或可信區塊瀏覽器開啟授權清單。
  3. 核對 token、spender 合約、額度及原始 DApp。
  4. 撤銷不再使用或來源不明的授權。
  5. 撤銷本身是鏈上交易,需支付 gas;確認完成後重新整理清單。
  6. 分別檢查曾使用的其他網路及 NFT 授權。

撤銷不能追回已轉走的資產。若發現未授權交易,還需檢查裝置、助記詞是否外洩,以及其他鏈上的權限。任何撤銷工具都不需要你輸入助記詞。

降低日常授權暴露

將長期保存資產的錢包與日常連接 DApp 的錢包分開;授權時優先選擇實際需要的額度,完成操作後再次檢查 allowance。若交易模擬顯示的資產流向與預期不符,取消簽名並離開頁面。

官方資料