Build Finance攻击事件分析_ANC:Slope Finance

DAO组织BuildFinance在社交媒体发文表示,该项目遭遇恶意治理攻击,攻击者恶意铸造了110万枚BUILD并抛售套利。知道创宇区块链安全实验室第一时间对本次事件深入跟踪并进行分析。

该合约线上提案投票地址?https://snapshot

functionvote(uint_proposalId,bool_support)publiclockVotes{require(state(_proposalId)==ProposalState

币安发布2022年终回顾报告,投资超过5亿美元来支持Web3和区块链创新:1月19日消息,币安发布2022年终回顾报告,总结了币安庞大生态的关键事实、统计数据和发展。

1. 到2022年底,在14个司法管辖区获得了许可、注册和批准。将安全与合规团队的人数增加了500%,吸纳了一些业内最优秀的人才。

2. 在加密货币领域发生一系列令人震惊的破产事件后,在严酷的宏观经济环境下无助于改善公众情绪,努力建立和恢复对币安乃至整个生态系统的信任。

3. 继续支持寻求对空间产生积极、持久影响并为最终用户创造价值的同行。 通过币安孵化器,投资了超过5亿美元来支持Web3和区块链创新,启动了第五季孵化计划,批准或完成了14笔战略并购交易,以及61笔代币风险投资交易。[2023/1/19 11:20:51]

else{proposal

波卡回顾上个月客户端事故 系内存不足导致:6月7日消息,Polkadot官方发文回顾,5月24日要求波卡验证节点将客户端降级至0.8.30版本事故,系内存不足导致。Polkadot表示,在试图构建区块5202216时因内存不足(OOM)错误而失败。该区块包含验证人选举的链上解决方案,该解决方案通常是在链下计算的,只有在没有提交链下解决方案的情况下才会在链上进行。由于提名者的数量众多,选举溢出了Wasm环境中分配的内存。为解决这个问题,当时验证者被要求暂时将他们的节点软件降级到至0.8.30版本并且使用「--execution=native」命令。该本地版本不受Wasm内存分配器的限制,网络在70分钟停机后恢复。之后在5203204区块,几个节点因「存储根不匹配」错误而失败,这是由于构建本地运行时和链上Wasm运行时的编译器版本不同造成的。解决方案是用一个具有正确编译器版本的Wasm运行时来覆盖链上Wasm运行时。Polkadotv0.9.3版本上线后修复了该类问题,Polkadot表示未来可能会支持4GB的Wasm分配内存。现在选举必须在链下进行,并且禁用链上选举。在分配器被改进之前,链下工作者将使用比链上Wasm运行时更高的内存限制确保链下选举不会耗尽内存并能成功提交。另外,Polkadot将确保本地和Wasm构建中使用相同的编译器版本。[2021/6/7 23:18:48]

receipt

Coinbase发文梳理回顾两次宕机事件 称将推出改进和防护工具应对危机:5月15日,Coinbase发文对此前4月9日和5月9日宕机事件作出回顾梳理。文中提到两次宕机事件起因是由于市场波动引起访问流量激增,主要数据库的连接速率增加,以及API延迟和错误率上升等。对此,交易所已针对这些情况做出反应,如更改数据库部署拓扑,以减少总体连接数,限制连接高峰等措施。Coinbase称将继续推出改进和防护工具,以应对未来潜在的危机。此前4月9日和5月9日,加密市场短时大幅波动,Coinbase出现宕机,大量用户表示无法登录账户。[2020/5/15]

该函数方法允许任何拥有一定数量资产的用户发起提案,持有该资产的其他用户进行投票,函数代码未发现安全问题,因此我们推测攻击者可能是通过合约发起的提案。在提案通过后,攻击者铸造了100万个BUILD代币,耗尽大部分Balancer和Uniswap流动性池的资金:

随后又通过治理合约控制平衡池,耗尽包括13万METRIC代币在内的其他数字资产:

最后丧心病狂的铸造了一亿个Build,出售给任何还存在流动性的池子:

目前还未确定攻击者发起通过的提案内容,但根据通过提案后的铸币行为,跟进到代币合约0x6e36556b3ee5aa28def2a8ec3dae30ec2b208739:

addresspublicgovernance;constructor()publicERC20Detailed("BUILDFinance","BUILD",18){governance=msg

functionmint(addressaccount,uintamount)public{require(msg

functionsetGovernance(address_governance)public{require(msg

合约在初始化的时候会设置合约拥有者为治理者,并且只有治理者可以发起铸币请求,而只有治理者才能调用setGovernance函数更换治理者,因此可以确定,攻击者发起的具体提案为更换治理者。

在创建合约的时候,治理者为0x2Cb037BD6B7Fbd78f04756C99B7996F430c58172,也就是合约部署者,他在部署合约后将治理者更换为TimeLock合约0x38bce4b45f3d0d138927ab221560dac926999ba6:

而在2021年1月,TimeLock合约将治理权交给了0x5a5a6ebeb61a80b2a2a5e0b4d893d731358d888583:

最后在2022年2月,由Suho.eth发起提案,利用低投票阈值将治理者更换为0xdcc8a38a3a1f4ef4d0b4984dcbb31627d0952c28,恶意接管后铸币套现。

0x03:总结

经过完整分析,知道创宇区块链安全实验室?明确了该次事件的源头由攻击者创造低阈值提案,让自己恶意接管了治理权限,去中心化的治理实现是很有必要的,但不应该让攻击者可以利用少量投票就通过提案。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-5:768ms