又一起DeFi攻击,复盘Flurry Finance事件
发布:中币网 时间:2022-02-23 00:00:00 加入收藏 打赏
原文来源:Certik 微信公众号
原文标题:《项目不立于「危墙之下」?Flurry Finance 被盗事件分析》
北京时间 2022 年 2 月 22 日下午 1:46,CertiK 安全专家团队检测到与 Flurry Finance 相关的一系列可疑活动,Flurry Finance 的 Vault 合约受到攻击,价值约 29.3 万美元的资产被盗。
下文 CertiK 安全团队将从合约地址及攻击操作等方面为大家进行详细的解读并分析。
攻击步骤
攻击者部署了一个恶意 Token 合约(也被用作攻击合约),并为
Token
和 BUSD 创建了一个 PancakeSwap 交易对。
攻击者:
https://bscscan.com/address/0x0f3c0c6277ba049b6c3f4f3e71d677b923298b35
恶意 Token 合约:
https://bscscan.com/address/0xb7a740d67c78bbb81741ea588db99fbb1c22dfb7
PancakeSwap 交易对:
https://bscscan.com/address/0xca9596e8936aa8e902ad7ac4bb1d76fbc95e88bb
攻击者从 Rabbit 的 Bank 合约中进行闪电贷,并触发了 StrategyLiquidate 的 execute 方法。
execute 方法将输入数据解码为 LP Token 地址,并进一步得到恶意 Token 合约地址。
攻击者利用恶意 Token 合约中的攻击代码发起初步攻击:
https://bscscan.com/address/0xbeeb9d4ca070d34c014230bafdfb2ad44a110142
StrategyLiquiddate 合约:
https://bscscan.com/address/0x5085c49828b0b8e69bae99d96a8e0fcf0a033369
恶意 Token 合约调用 FlurryRebaseUpkeep 合约的 performUpkeep 方法,对 Vault 合约的相关金额进行重新统计,并更新了与之相关的 Rho Token 的 multiplier。
此处的 multiplier 将用于 Rho Token 的余额计算。对 Vault 合约的相关金额进行重新统计,并更新了与之相关的 Rho Token 的 multiplier。此处的 multiplier 将用于 Rho Token 的余额计算。该更新基于与 Vault 合约相关的盈利策略合约里的余额。
更新是在闪电贷的过程中触发的,此时的闪电贷还未结束,借出的金额也还未归还,因此 Bank 合约的当前余额远小于正常值。此 Bank 合约也是某个 strategy 的一部分,因而使得某 strategy 的余额小于正常值,进一步导致 multiplier 小于正常值。
FlurryRebaseUpkeep 合约:
https://bscscan.com/address/0x10f2c0d32803c03fc5d792ad3c19e17cd72ad68b
其中一个 Vault 的合约:
https://bscscan.com/address/0xec7fa7a14887c9cac12f9a16256c50c15dada5c4
攻击者归还了闪电贷的款项并完成了初步攻击,且为进一步攻击获利做好了准备。
在紧接着的交易中,攻击者以前一次交易中得到的低 multiplier 存入 Token ,将 multiplier 更新为更高的(正常)值,并以高 multiplier 提取 Token 。例如,在其中一笔初步攻击的交易中,multiplier 被更新为 4.1598e35。
在进一步攻击的交易中 multiplier 被更新为 4.2530e35。
攻击实例:
https://bscscan.com/tx/0x923ea05dbe63217e5d680b90a4e72d5552ade9e4c3889694888a2c0c1174d830
https://bscscan.com/tx/0x646890dd8569f6a5728e637e0a5704b9ce8b5251e0c486df3c8d52005bec52df
因为 multiplier 乘数是决定 Rho Token 余额的因素之一:
攻击者的 Rho Token 余额在交易中增加了,所以 ta 能够从 Vault 中提取更多的 Token 。
攻击者多次重复这一过程,从 Vault 合同中盗走了价值 29.3 万美元的资产。
写在最后
该次事件主要是由外部依赖性引起的。
因此 CertiK 的安全专家建议:项目在与外部合约交互之前应对其安全性有清晰的认知,并且限制外部依赖可能对自身合约的影响。
本次事件的预警已于第一时间在CertiK 官方推特进行了播报。
除此之外,CertiK 官网已添加社群预警功能。在官网上,大家可以随时看到与漏洞、黑客袭击以及 Rug Pull 相关的各种社群预警信息。
原文链接
来源:
来源:中币网 https://www.zhongbi.net/news/blocknews/311403.html 声明:登载此文仅出于分享区块链知识,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。 此文如侵犯到您的合法权益,请联系我们3111859717@qq.com,我们将第一时间处理。