需要撤销。DApp 换合约,旧合约给的授权不会自动失效,它会像一把你丢了的钥匙,一直挂在链上。
步骤 1:理解"旧授权"为什么是枚定时炸弹
【做什么】 厘清旧授权在什么条件下会变成风险源。
【怎么做】 对照以下三种风险路径,理解"只是换了前端"和"链上安全清零"不是一回事:
合约漏洞:旧合约本身存在漏洞,或者升级后引入了恶意代码。攻击者利用漏洞调用旧合约,经由你当年给它的授权,直接转走你的资产。
权限滥用:即使旧合约没漏洞,如果其管理员私钥泄露,或合约本身被放弃维护,控制者同样可以滥用授权。
自动化扫描:AI 和自动化工具正在批量扫描老旧合约和"沉睡"的授权,攻击成本大幅降低。过去安全但被遗忘的授权,现在可能成为被攻击的目标。
【完成标准】 你能明确说出:"旧合约下线"不等于"链上风险清零",历史授权是持续有效的权限。
步骤 2:检查并撤销对旧合约的授权
【做什么】 使用授权管理工具,找到并取消对旧合约的授权。
【怎么做】 操作只需三步:
打开工具:访问 revoke.cash 或 revokescout.com 这类授权管理 DApp。
连接钱包:选择旧合约所在网络(如 Ethereum、BSC),连接你的钱包。
识别并撤销:在列表中寻找你不认识、或对应旧项目名称的授权条目。点击"撤销"(Revoke),在钱包中确认交易并支付 Gas 费。
高危风险:断开钱包与 DApp 的连接并不能保护你免受授权漏洞的危害。这仅意味着 DApp 前端看不到你的地址,但你对智能合约的授权依然有效。撤销授权是唯一有效的清理方式。
常见失败原因:很多人为了省事,习惯在 DApp 里直接点"最大"或"无限"授权。这相当于把金库的万能钥匙给了陌生人。养成"按需授权"和"用完即撤"的习惯,能极大降低风险敞口。
步骤 3:判断"及时撤销"与"暂时保留"
【做什么】 针对不同情况的授权,采取不同的处理策略。
【完成标准】 你可以对钱包里的授权做出判断,而不只是简单处理。
| 情况 | 建议 | 原因 |
|---|---|---|
| 旧合约已完全弃用 | 立即撤销 | 不再使用,留着就是风险 |
| 知名协议(如 Uniswap) | 定期检查,保留或撤销均可 | 安全性较高,但非万无一失;若使用频繁可保留,不放心则撤销 |
| 未知/山寨 DApp | 立即撤销 | 风险极高,用完就应马上清理 |
操作完成的校验方式:撤销授权后,刷新 Revoke.cash 页面,确认该授权条目已从列表中消失。同时,在钱包的交易记录中,你能找到一笔状态为"成功"的授权撤销交易(金额通常为 0)。



