本文由Certik原创,授权金色财经首发。
北京时间2022年2月22日下午1:46,CertiK安全专家团队检测到与FlurryFinance相关的一系列可疑活动,FlurryFinance的Vault合约受到攻击,价值约29.3万美元的资产被盗。
下文CertiK安全团队将从合约地址及攻击操作等方面为大家进行详细的解读并分析。
攻击步骤
①攻击者部署了一个恶意代币合约,并为代币和BUSD创建了一个PancakeSwap交易对。
攻击者:https://bscscan.com/address/0x0f3c0c6277ba049b6c3f4f3e71d677b923298b35
Jack Dorsey回应a16z合伙人:老实做你的风投合伙人:1月4日消息,a16z 合伙人 Chris Dixon 在推特上发布谁拥有 Web2,并贴出包括 Jack Dorsey 的 Block(前 Square)在内的 4 家公司股东信息。数据显示,包括摩根士丹利、富达、高盛在内的 Block 公司前十大股权所有者总计持有超 30% 的股份。
对此,Jack Dorsey 回应 Chris Dixon:老老实实做你的 LP(有限合伙人)去吧。Chris Dixon 则表示:a16z 的 LP 主要是高校和基金会。虽然我们试图找到向公众开放 a16z 资金的途径,但当下的美国法律禁止这样做。[2022/1/4 8:24:04]
恶意代币合约:https://bscscan.com/address/0xb7a740d67c78bbb81741ea588db99fbb1c22dfb7
律师观点:“Archer诉Coinbase”一案再次佐证了“不是你的私钥,就不是你代币”:律师Justin Wales概述了近期加密货币行业内部发生的案件,并指出该案的判决再一次佐证了一句真理——“不是你的私钥,就不是你代币”。
Justin Wales给出的例子为“Archer诉Coinbase”一案。在本案中,原告Darrell Archer起诉Coinbase违反了用户协议,原因是该公司拒绝向其提供此前由比特币分叉而生成的比特币黄金(BTG)。在分叉发生时,Archer在Coinbase上存储了350枚比特币,Archer表示这将产生价值约15.9万美元的BTG。但由于Archer已将其比特币的控制权委托给了Coinbase,因此其无法自行获取分叉而出的BTG。在本案的判决中,加州第一上诉法院认为,Coinbase的用户协议中没有规定交付BTG的义务,因此无需向Archer交付BTG。(Decrypt)[2020/8/23]
PancakeSwap交易对:https://bscscan.com/address/0xca9596e8936aa8e902ad7ac4bb1d76fbc95e88bb
比特币核心开发者:山寨币或ICO会摧毁你的钱包和灵魂:比特币核心开发者Jimmy Song今日发推称,比特币是一款生存游戏。错误的进入山寨币领域或ICO领域将摧毁你的钱包和你的灵魂。比特币背叛者,如果你被BCH,ETH,BSV或其他贪婪的东西了,你可以回来,但将无法得到救赎。[2020/4/21]
②攻击者从Rabbit的Bank合约中进行闪电贷,并触发了StrategyLiquidate的execute方法。
execute方法将输入数据解码为LP代币地址,并进一步得到恶意代币合约地址。
攻击者利用恶意代币合约中的攻击代码发起初步攻击:https://bscscan.com/address/0xbeeb9d4ca070d34c014230bafdfb2ad44a110142
现场 | SIVIRA CEO :区块链可以让你的时间、热情变成资产:金色财经现场报道,10月3日,在N.avenue株式会社在东京举办日本区块链大会b.tokyo上,SIVIRA CEO 藤井隆嗣在参与“在区块链发生了哪些区块链模式的改变?”的主题讨论中指出:在区块链上产出的游戏项目可以进行交易。区块链可以让你的时间、热情变成资产。现在的商业模式使用法币连接,新的商业模式是用代币连接。[2019/10/3]
StrategyLiquiddate合约:https://bscscan.com/address/0x5085c49828b0b8e69bae99d96a8e0fcf0a033369
IMEOS首发 BM表示EOS合约具有整数溢出保护:据金色财经合作媒体IMEOS报道:近日ETH出现多个ERC20智能合约的处理溢出错误,BM在推特上发表评论:新的ETH契约Bug可能会破坏整个Token的供应,让持有者留下无价值Token.这就算为什么代码不能成为法律,随即表示EOS erc合约不容易受到这种攻击。而EOS官方群也有人表示担忧EOS是否具有整数溢出保护?BM回应:有很多C ++模板类可以封装类型并检查溢出。[2018/4/25]
③恶意代币合约调用FlurryRebaseUpkeep合约的performUpkeep方法,对Vault合约的相关金额进行重新统计,并更新了与之相关的Rho代币的multiplier。
此处的multiplier将用于Rho代币的余额计算。对Vault合约的相关金额进行重新统计,并更新了与之相关的Rho代币的multiplier。此处的multiplier将用于Rho代币的余额计算。该更新基于与Vault合约相关的盈利策略合约里的余额。
更新是在闪电贷的过程中触发的,此时的闪电贷还未结束,借出的金额也还未归还,因此Bank合约的当前余额远小于正常值。此Bank合约也是某个strategy的一部分,因而使得某strategy的余额小于正常值,进一步导致multiplier小于正常值。
FlurryRebaseUpkeep合约:https://bscscan.com/address/0x10f2c0d32803c03fc5d792ad3c19e17cd72ad68b
其中一个Vault的合约:https://bscscan.com/address/0xec7fa7a14887c9cac12f9a16256c50c15dada5c4
④攻击者归还了闪电贷的款项并完成了初步攻击,且为进一步攻击获利做好了准备。
⑤在紧接着的交易中,攻击者以前一次交易中得到的低multiplier存入代币,将multiplier更新为更高的值,并以高multiplier提取代币。例如,在其中一笔初步攻击的交易中,multiplier被更新为4.1598e35。
在进一步攻击的交易中multiplier被更新为4.2530e35。
攻击实例:https://bscscan.com/tx/0x923ea05dbe63217e5d680b90a4e72d5552ade9e4c3889694888a2c0c1174d830
https://bscscan.com/tx/0x646890dd8569f6a5728e637e0a5704b9ce8b5251e0c486df3c8d52005bec52df
⑥因为multiplier乘数是决定Rho代币余额的因素之一:
攻击者的Rho代币余额在交易中增加了,所以ta能够从Vault中提取更多的代币。
⑦攻击者多次重复这一过程,从Vault合约中盗走了价值29.3万美元的资产。
写在最后
该次事件主要是由外部依赖性引起的。
因此CertiK的安全专家建议:项目在与外部合约交互之前应对其安全性有清晰的认知,并且限制外部依赖可能对自身合约的影响。
本次事件的预警已于第一时间在CertiK官方推特进行了播报。
除此之外,CertiK官网https://www.certik.com/已添加社群预警功能。在官网上,大家可以随时看到与漏洞、黑客袭击以及RugPull相关的各种社群预警信息。
近期攻击事件高发,加密项目方及用户们应提高相关警惕并及时对合约代码进行完善和审计。除此之外,技术团队应及时关注已发生的安全事件,并且检查自己的项目中是否存在类似问题。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。