StrongBlock 因攻击者劫持废弃治理机制损失7.2万美元

区块链文库报道:

攻击者利用StrongBlock废弃治理系统窃取约7.2万美元代币

一名攻击者利用StrongBlock已废弃的治理系统,夺取了关键协议合约的管理权限,并盗走了约7.2万美元的STRONG和STRNGR代币。

区块链安全公司Defimon Alerts表示,攻击者累积了STRONG代币的大部分投票权(该代币在项目活跃度下降后已基本失去价值),随后提交并通过了一项提案,将StrongBlock的治理代理(Governor proxy)的控制权转移到了自己手中。

与传统的智能合约漏洞攻击不同,攻击者无需绕过协议原有的访问控制机制,而是完全按照StrongBlock的治理规则行事——这相当于将协议的投票系统本身变成了盗窃工具。

恶意提案夺取管理员权限

攻击始于攻击者获得了足够多的STRONG代币,从而能够控制治理投票的结果。Defimon Alerts称,攻击者提交了一份提案,要求治理升级合约(Governor’s Upgrader)调用 setPendingAdmin(attacker) 函数。该提案获得了足够票数,通过了必要的排队流程,并在链上成功执行。

完成治理流程后,攻击者的地址成为了治理代理的管理员。随后,攻击者将合约的现有实现替换为一个由自己控制且未经验证的新实现。据称,这个替换合约中包含一个名为 forward(address, bytes) 的函数,该函数只能由攻击者的外部账户调用,允许利用治理合约的权限执行任意交易。

可升级的代理系统将合约的存储数据与底层逻辑分离。获得授权的管理员可以将代理指向新的实现,从而在不改变合约地址的情况下改变其功能。在此次事件中,攻击者利用这一升级权限,将治理合约变成了一个任意调用工具。

超过41.6万枚代币被转移

在部署恶意实现后,攻击者利用治理合约的权限,从StrongBlock控制的资金池中转移了资产。被盗资产包括32,695枚STRONG和383,447枚STRNGR,总计超过41.6万枚代币。Defimon Alerts评估,在事件发生当时这些资产价值约7.2万美元。

StrongBlock最初将STRONG宣传为一种治理代币,用于奖励区块链节点运营者的协议。后来,STRNGR作为项目节点奖励生态系统的一部分被引入。

尽管与大型去中心化金融漏洞相比,被盗金额相对较小,但这一事件表明,已不活跃的协议仍然可能带来安全风险。即使开发者和社区成员不再积极监控,智能合约、治理权限和代币余额仍然在链上持续运行。

废弃的治理可能成为安全隐患

基于代币的治理通常假设,持有大量代币的投票者会因经济利益而保护协议。但当治理代币变得廉价,而其所控制的合约仍持有资产或拥有强大管理权限时,这种假设就会失效。攻击者可能只需花费低于合约可获取价值的成本,就能购买足够的投票权来控制协议。因此,治理攻击可以在没有任何软件缺陷的情况下发生:代码执行了被批准的操作,但批准过程本身的经济基础已被破坏。

停止一个项目不仅仅是关闭其网站、停止开发活动或公开沟通。团队必须移除残留资产、撤销升级权限、在可能的情况下禁用治理模块,并将任何无法避免的管理权限转移到安全管理的地址上。

其他保护措施包括设置有意义的投票门槛、执行延迟、关键升级的多签批准、紧急取消机制,以及对待处理提案的主动监控。时间锁尤为重要,因为它提供了一个窗口期,使得可疑的治理操作可以在执行之前被发现。

StrongBlock被接管事件最终成功,并非因为攻击者破坏了协议规则,而是因为这些规则在经济和社区层面的安全防护已基本消失的情况下,仍在继续运作。

© 版权声明
THE END
喜欢就支持一下吧
分享