BEA:黑客获利近8000万美元 恶意提案如何防范?

2022年4月17日,成都链安链必应-区块链安全态势感知平台舆情监测显示,算法稳定币项目BeanstalkFarms遭黑客攻击,黑客获利近8000万美元,成都链安技术团队第一时间对事件进行了分析,结果如下。

1事件相关信息

攻击交易

0xcd314668aaa9bbfebaf1a0bd2b6553d01dd58899c508d4729fa7311dc5d33ad7

攻击者地址

0x1c5dcdd006ea78a7e4783f9e6021c32935a10fb4

攻击合约

0x79224bC0bf70EC34F0ef56ed8251619499a59dEf

被攻击合约

NFT 借贷协议 XCarnival 遭到攻击,黑客获利约 380 万美元:6月26日消息,PeckShield 发推称,NFT 借贷协议 XCarnival 遭到攻击,黑客获利 3087 枚以太坊(约 380 万美元),而协议损失可能更高。黑客地址为 0xb7CBB4d43F1e08327A90B32A8417688C9D0B800a,PeckShield 表示本次攻击或由于已解除抵押的 NFT 仍被作为抵押品所致。[2022/6/27 1:33:01]

0xc1e088fc1323b20bcbee9bd1b9fc9546db5624c5

2攻击流程

1.攻击者从攻击的前一天发起了提案交易,提案通过会提取Beanstalk:BeanstalkProtocol合约中的资金。

Wormhole通过Immunefi平台修复一高危漏洞,黑客获1000万美元奖励:5月21日,据Immunefi官方消息,白帽黑客satya0x通过该平台为跨链桥Wormhole检举出一高危漏洞,并因此获得1000万美元奖励金,创下Immunefi平台获奖金额最高记录。该漏洞很快得到修复,没有用户资金受到影响。[2022/5/21 3:32:04]

2.黑客通过闪电贷换取了350,000,000个DAI,500,000,000个USDC,150,000,000个USDT,32,100,950个BEAN和11,643,065个LUSD作为资金储备。

派盾:BNB Chain和以太坊上的Umbrella Network奖励池被抽取,黑客获利70万美元:3月20日消息,派盾发推称,BNB Chain和以太坊上的Umbrella Network奖励池已被抽取,导致黑客获利70万美元。可能发生了黑客攻击,因为withdraw()中存在未检查的下溢,所以任何人都可以提取任何金额,即使没有任何余额。并提醒Umbrella Network查看BNB Chain和以太坊上的StakingReward Contract。[2022/3/20 14:07:51]

3.黑客将2步骤的DAI,USDC,USDT资金在Curve.fiDAI/USDC/USDT交易池中添加为979,691,328个3Crv流动性代币,用15,000,000个3Crv换来15,251,318个LUSD。

Visor Finance攻击事件报告:黑客获取了管理帐户访问权限:基于Uniswap V3的DeFi流动性协议Visor Finance就此前发生的攻击事件发布报告称,攻击者获得了一个管理帐户的访问权限,能够从尚未存入流动性提供者头寸的存款中提取资金。报告称,被盗金额约占其300万美元TVL的16.7%(约合50万美元),并证实该黑客并非团队成员,因此对其紧急提款保障措施缺乏充分了解,被盗资金仅限于未配置的资产。(BeInCrypto)[2021/6/21 23:53:12]

4.将964,691,328个3Crv代币兑换为795,425,740个BEAN3CRV-f用于投票,将32,100,950个BEAN和26,894,383LUSD添加流动性得到58,924,887个BEANLUSD-f流动性代币。

5.使用4步骤中的BEAN3CRV-f和BEANLUSD-f来对提案进行投票,导致提案通过。从而Beanstalk:BeanstalkProtocol合约向攻击合约转入了36,084,584个BEAN,0.54个UNI-V2,874,663,982个BEAN3CRV-f以及60,562,844个BEANLUSD-f。

6.最后攻击者将流动性移除并归还闪电贷,把多余的代币兑换为24830个ETH转入攻击者账户中。

3漏洞分析

本次攻击主要利用了投票合约中的票数是根据账户中的代币持有量得到的。

攻击者至少在一天前发起提取Beanstalk:BeanstalkProtocol资金的提案,然后调用emergencyCommit进行紧急提交来执行提案,这个就是攻击者1天之前发起攻击准备的原因所在。

4资金追踪

截止发文时,攻击者获利22029601个USDC,14742429个DAI,6,603,829个USDT与0.5407个UNI-V2,640224美元的BAEN代币资金近8000万,在攻击时将其中的25万USDC捐赠了乌克兰,之后攻击者将资金转换为ETH并将资金持续向Tornado.Cash转移。

针对本次事件,成都链安技术团队建议:

1.投票所用资金应在合约中锁定一定时间,避免使用账户的当前资金余额来统计投票数量,以避免可能出现的反复投票以及使用闪电贷进行投票;

2.项目方和社区应关注所有提案,如果提案是恶意提案,建议在提案投票期间应及时做出处理措施,将提案废弃,禁止其接受投票以及执行;

3.可考虑禁止合约地址参与投票;此外项目上线前最好进行全面的安全审计,规避安全风险。

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

链链资讯

[0:31ms0-3:575ms