同一个助记词,为什么他丢了120万美金,我只丢了0.3个ETH
2022年3月,我认识的一个老哥在Opensea卖了一只无聊猿。钱到账那天他喝了点酒,把助记词拍照存进了iCloud。三个月后,钱包里120万美金的USDC和两只Azuki被清空。黑客没用什么高深技术,只是搞到了他的Apple ID。
我自己也丢过钱。2021年测试一个土狗项目,随手用手机钱包连了个钓鱼网站,授权了无限额度。0.3个ETH,十分钟内没了。金额不大,但那次之后我把钱包安全设置彻底重做了一遍。
这两件事的差别不在运气,在于你愿不愿意花半小时把几个开关拨对。
助记词:别让它出现在任何联网设备上
先说最要命的。助记词泄露是加密资产丢失的第一大原因,没有之一。Chainalysis 2023年的报告里提到,当年被盗资金中约17亿美元与私钥管理不当直接相关。
我现在的做法很土但有效:助记词只写在纸上,写两份,一份放家里保险柜,一份放父母家。不拍照、不存备忘录、不发微信给自己、不存iCloud或Google Drive。你可能觉得这太原始了,但恰恰是“原始”救了你——黑客能黑进云端,黑不进你家抽屉。
有个细节很多人忽略:初始化钱包时,屏幕上的助记词不要截图,也不要对着屏幕念出来。部分恶意输入法会记录剪贴板和麦克风。我习惯在断网的旧手机上生成钱包,助记词抄完再联网。
硬件钱包不是买了就安全
我2022年入手Ledger Nano X,前三个月用得跟普通热钱包一样——插上电脑就交易,从来不核对屏幕上的地址。后来被一个朋友骂醒了。
硬件钱包的核心价值在于“屏幕确认”。你发起一笔转账,电脑上显示收款地址是A,硬件钱包屏幕上必须也显示A,你按确认键才生效。如果电脑中了剪贴板劫持病毒,显示的是A,硬件钱包屏幕上显示的是B,你一眼就能看出来。但如果你从来不看你硬件钱包的屏幕,那这玩意就是个300块的U盘。
具体操作:每次转账,先看硬件钱包屏幕上的地址前4位和后4位,和你要转的地址对一遍。大额转账先转一笔最小单位测试,确认到账再转全款。别嫌麻烦,我转超过5000U的金额都是这么干的。
授权管理:最容易被忽略的漏洞
回到我丢0.3个ETH那件事。问题出在ERC-20授权——我连的那个网站让我授权了USDT的无限额度,意思是这个合约可以随时转走我钱包里所有的USDT。我当时钱包里只有0.3个ETH,损失不大。但如果我钱包里有10万U的USDT,一样会被搬空。
现在每个月我会花五分钟做一件事:打开revoke.cash,连接钱包,看一遍所有授权记录,把不用的、不认识的、额度是“无限”的授权全部取消。操作很简单,点“Revoke”然后付一笔gas费就行,通常不到2美金。
有个真实案例:2023年6月,一个DeFi老玩家在Uniswap V3上做LP,授权了多个合约。其中一个合约后来被曝出漏洞,攻击者利用残留的无限授权转走了他钱包里约8万美金的资产。他后来在推特上复盘,说自己“从来没做过任何危险操作”——但他忘了,授权本身就是危险操作。
双钱包策略:热钱包只放零花钱
我现在用两个钱包。一个热钱包,MetaMask,装在浏览器上,只放不超过500美金的资产,专门用来交互新项目、mint NFT、测试合约。丢了不心疼。
另一个冷钱包,Ledger,只用来存大额资产,从来不连任何DApp,只做转账和收款。需要交互的时候,从冷钱包转一小笔到热钱包去操作。
这个策略的逻辑很简单:你不可能永远不碰新东西,但你可以控制碰新东西时暴露的金额。我见过太多人把全部身家放在一个天天连DApp的热钱包里,这不是勇敢,是懒。
两个容易被忽视的开关
MetaMask设置里有个“钓鱼检测”开关,默认是开的,别关。它会拦截一些已知的恶意域名,虽然不能100%防住,但能挡住大部分低级钓鱼。
还有一个:交易模拟。2024年MetaMask上线了交易预览功能,发起交易前会模拟执行结果,告诉你这笔交易之后钱包余额会怎么变。如果模拟结果显示你的USDT被转走了,那就别签。这个功能在设置里可以手动开启,建议打开。
另外,浏览器插件钱包只装一个。我见过有人同时装了MetaMask和Phantom,两个插件互相干扰,导致交易签名出错,把ETH转到了合约地址而不是收款地址,钱直接卡死。
最后说一个血泪教训
2023年11月,我一个读者在Discord上点了一个“官方空投领取”链接,钱包里2.4个WBTC被转走。他后来把交易哈希发给我看,我发现那个钓鱼网站伪造了Uniswap的界面,连URL都只差一个字母。他连接钱包的时候其实弹出了授权请求,但他看都没看就点了确认。
说白了,钱包安全设置做得再好,最后那一下“确认”按钮是你自己按的。硬件钱包能防住电脑病毒,防不住你手快。转账前停三秒,看一眼收款地址,看一眼授权内容,看一眼gas费对不对——这三秒可能值几十万美金。