用隔离限制一次错误的最大代价
不要让一次陌生交互同时威胁长期资产、日常账户和学习实验。
只做经过复核的转账,不直接连接陌生协议。
只保留近期交互需要的小额资产。
使用测试网或可完全损失的小额预算。
地址隔离不等于设备隔离
安全研究浏览器应使用独立 profile,不导入冷钱包,也不保留真实交易所会话。
签名前,先识别自己在授权什么
approve确认 token、spender、额度和链。
permit确认 spender、value、nonce、deadline 与 domain。
setApprovalForAll它通常允许对方移动该集合的全部 NFT。
transaction检查目标地址、函数、参数、value 和模拟结果。
看不懂的签名默认拒绝。交易模拟只能降低风险,不能证明合约安全。
“开源”不等于当前链上版本安全
仓库代码、已验证源码、当前实现、当前状态与前端实际调用,是五个不同对象。
- 确认地址
从多个官方渠道交叉确认部署地址。
- 识别代理
读取当前实现地址、管理员和升级历史。
- 核对版本
对照仓库 commit、编译器配置与构造参数。
- 检查审计范围
确认报告覆盖当前 commit 和部署版本。
- 限制暴露
只投入最小必要金额,并提前规划退出路径。
被盗后先控制损失,再分析原因
第一原则
断开疑似感染设备网络,但不要急于删除证据。用可信设备创建全新钱包,不复用旧助记词。
- 优先转移仍可控的高价值资产。
- 撤销旧授权,但不要让它延误资产转移。
- 冻结或重置相关交易所、API 和邮箱凭据。
- 保存交易哈希、地址、截图、日志与时间线。
- 警惕要求预付费、助记词或远程控制的“追回服务”。
课末自测
为什么一个协议公开了 GitHub 源码,也不能证明你正在交互的合约安全?
信心