
2026年6月25日,龙卷风币(Tornado Cash)DAO的治理页面上出现了一份编号为67的提案,标题是「建立0.5%费率标准与90%动态通缩销毁方案」。
提案正文写得非常专业,声称要升级中继者注册表架构,把协议手续费的90%永久销毁、10%分给质押者,还附上了一套「财富正向循环」的经济模型推演。提案人甚至申请从国库领取50枚TORN来补偿部署合约的Gas费。
但这份提案的合约代码没有在Etherscan上进行验证——这是致命的危险信号。
1. 提案的真实目的
L2BEAT研究员Sergey Shemyakov首先注意到了异常,并联系安全研究员Pascal Caversaccio请求独立审查。
Caversaccio用反编译工具还原了提案合约的字节码,发现了一个名为「governance」的函数,功能是返回一个地址,告诉协议「谁才是真正的管理员」。而这个函数里写死的地址,是攻击者自己的钱包。
一旦提案通过执行,协议的最高权限地址就会被悄悄替换成攻击者的地址。真实的治理地址是0x5efda50f22d34F262c29268506C5Fa42cB56A1Ce,而攻击者伪造的地址是0x5efda50f22d34f272c7077689d6abc42f15e285f——两个地址前15个字符完全一样。
如果提案通过,攻击者可以盗取治理合约中约2300万美元的TORN代币(占TORN代币全流通市值的约48%),并瘫痪整个协议。关于治理攻击的历史背景,可以参考我们的分析:治理攻击与社区金库风险。
2. 历史重演
这已经不是龙卷风币第一次遭遇治理攻击了。2023年5月,攻击者通过一份隐藏自毁函数的恶意提案拿到了120万票的治理权,强行通过了提案并短暂夺取了协议控制权。想了解这次事件的完整经过,可以阅读:2023年治理攻击始末。
3. 社区的反应
截至报道,投票结果是:赞成0票,反对27,163枚TORN,占比100%。社区迅速识破了攻击意图,压倒性反对。由于未达到10万TORN的法定投票数,提案预计将自动失效。
值得庆幸的是,龙卷风币的混币资金池本身不受此类提案影响。此次提案的目标是治理合约本身,而非用户存取的匿名化功能合约。

4. 对DAO安全的启示
这是龙卷风币DAO第二次遭遇治理攻击。两次攻击的共同点是:
- 提案代码未经验证:攻击者利用社区对技术细节的不熟悉,跳过Etherscan验证步骤。
- 利用delegatecall调用方式:在合约升级时执行恶意代码,修改治理合约持有的所有状态。
- 地址伪装术:伪造的地址与真实治理地址高度相似,利用视觉盲点欺骗审查者。
这意味着,仅靠社区成员对提案进行人工审查,不足以防御这种经过精心伪装的代码攻击。
想了解龙卷风币未来的合规化演进方向,可以阅读:Privacy Pools:Tornado Cash 的合规进化。
💡 常见疑问解答
2026年6月Tornado Cash DAO遭遇了什么类型的治理攻击?
2026年6月25日,攻击者提交了一份编号为67的恶意治理提案,标题伪装为「建立0.5%费率标准与90%动态通缩销毁方案」,提案合约代码未在Etherscan上验证,目标是通过delegatecall机制将协议最高权限地址替换为攻击者钱包,企图盗取约2300万美元的社区金库。
攻击者使用了什么技术手段来伪装恶意提案?
攻击者使用了三个主要手段:提案合约代码未经验证,使社区无法直接审查逻辑;利用delegatecall调用方式在合约升级时执行恶意代码;伪造与真实治理地址前15个字符完全相同的地址来欺骗视觉审查。
社区是如何应对这次治理攻击的?
L2BEAT研究员Sergey Shemyakov首先发现异常并联系安全研究员Pascal Caversaccio独立审查。投票结果显示赞成0票、反对27,163枚TORN,社区以100%的反对率压倒性否决了提案,由于未达到10万TORN的法定投票数,提案自动失效。
这次攻击与2023年的治理攻击有何异同?
两次攻击都利用了提案代码未经验证和delegatecall机制。2023年攻击者通过隐藏SELFDESTRUCT和CREATE2操作码的变形攻击获得120万虚假投票权;2026年攻击者则通过地址伪装和诱导性提案描述试图欺骗社区,两次攻击都暴露了DAO治理中人工审查的局限性。
