bEarnFi黑客攻击始末:代码现“小”问题轻松得手1,100万美元

  • 事件概述:2021年5月16日,跨链聚合器bEarn Fi因机枪池代码漏洞遭黑客攻击,损失约1,100万美元,攻击资金源于Cream Finance的闪电贷。
  • 攻击流程
    • 攻击者借出780万BUSD,存入bEarn Fi的BvaultsBank后转入Alpaca借贷池,获得ibBUSD凭证;
    • 利用ibBUSD与BUSD的价差(ibBUSD估值更高),提取时套利20余万BUSD;
    • 重复操作放大漏洞,最终归还闪电贷本金后净获利近1,100万美元。
  • 根本原因:BvaultsStrategy的提取逻辑未严格校验ibBUSD与BUSD的兑换比例,导致价差被恶意利用。
  • 后续反思:bEarn Fi承认代码审计疏漏,表示将优先加强安全而非创新;PeckShield再次呼吁DeFi项目重视代码审计与风险防范。
  • 行业警示:DeFi安全是生态发展的基石,需在损失发生前主动排查漏洞,避免事后追悔。
总结

PeckShield「派盾」安全人员追踪和分析发现,此次攻击始于 bEarn Fi 机枪池(Vault)代码存在的「小问题」,以下是攻击细节分析。

值得注意的是,此次攻击的本金是从 Cream Finance 的闪电贷借来的。

攻击者从 Cream Finance 闪电贷借出 7,804,239.1 BUSD;

接着,攻击者创建的合约将所借 BUSD 存入 BvaultsBank 后,这些 BUSD 立即存至 BvaultsStrategy 策略中,随即转存入 Alpaca 借贷资金池,此时,攻击者可获得借贷资金池返还给的 ibBUSD 合成资产作为用户的抵押凭证(相当于存折)。当退出时,用户可以凭借该凭证赎回抵押在借贷资金池内的本金及其抵押期内所产生的利息。在这一步中,Alpaca Vault 铸造了 7,598,066.6 ibBUSD 返还至 BvaultsStrategy;

合约利用所铸造的 7,598,066.6 ibBUSD 通过 Alpaca FairLaunch 进行挖矿;

当攻击者合约从 BvaultsBank 提取 7,804,239.1 BUSD 时,以 BvaultsStrategy 提取逻辑为准,按照 ibBUSD 的价格来换算,而 iBUSD 的价格高于 BUSD,则 7,804,239.1 ibBUSD 相当于 8,016,006.1 BUSD,凭空多出 20 多万 BUSD。

值得注意的是,攻击者合约只能从 bVaults Bank 取出其中 7,804,239.1 BUSD,并再次存入用于第二轮攻击,加上上一轮未从 BvaultsStrategy 取出的部分,此时,BvaultsStrategy 转入 Alpaca 借贷资金池的数额就变成了 8,016,006.1 BUSD。

攻击者重复操作,最终将 7,806,580.4 BUSD 返还给闪电贷,造成近 1,100 万美元的损失。

bEarn Fi 在复盘此次攻击事件时写道:务必复核所有的产品代码,由于近期 DeFi 安全事件频繁发生,未来的工作重心将从创新调整到增强安全上来。 

事实上,每次 DeFi 安全事件发生后,区块链安全公司 PeckShield 「派盾」都会警示协议开发者引以为戒,在协议上线前对代码进行审计和研究,在攻击事件发生后自查代码,防患于未然,但说一千道一万都不及遭到损失数百上千万美元的教训来得深刻。

安全是 DeFi 生态愈发繁荣的前提,也是一切创新创造的根本,不要等到造成损失才审视安全的重要性。

分享至:

作者:PeckShield

本文为PANews入驻专栏作者的观点,不代表PANews立场,不承担法律责任。

文章及观点也不构成投资意见

图片来源:PeckShield如有侵权,请联系作者删除。

关注PANews官方账号,一起穿越牛熊
推荐阅读
2021-05-19 05:08
2021-05-19 04:50
2021-05-19 04:38
2021-05-19 04:30
2021-05-19 04:26
2021-05-19 03:48

热门文章

行业要闻
市场热点
精选读物

精选专题

App内阅读